怎么用JSP实现MySQL的分页功能

我是用JAVABean编写的。只要告知思路,不需代码。... 我是用JAVABean编写的。
只要告知思路,不需代码。
展开
 我来答
大象依人
2009-06-04 · TA获得超过223个赞
知道答主
回答量:62
采纳率:0%
帮助的人:0
展开全部
分页一般有两种方式,假如你每页只显示20条数据:
一 把所有的结果集都查询出来放到一个集合中,然后在第一页从该集合中取出前20条显示到页面上。点击下一页,再从该集合中取出21--40条显示到页面上。二 就是利用mysql的limit语句,把页码传到底层数据库,用户翻一页就执行一次查询,查出该页要显示的内容。
例如:select * from 表 limit 0,20;取1--20的记录
select * from 表 limit 20,20;取21--40的记录
其中limit后面的第一个参数是偏移量,相当于从哪行记录开始查询
第二个参数是要取出的记录数

我认为第二种方式比较好,因为假设结果集是1万条,如果用第一种方式一下子取到集合里再分页,太浪费资源。
而第二种方式,用户看翻10页它就查200条,看100页就取2000条。比较节省资源,反正用户都比较懒,一般都不会从第一页一直翻到最后一页 :)

这两种方式,网上代码有不少,这里就不多说了,祝你顺利!
windseed
2009-06-04 · TA获得超过121个赞
知道小有建树答主
回答量:187
采纳率:0%
帮助的人:164万
展开全部
很简单,将所有记录存储到一个列表里面,这个列表有序号,通过页面大小将这个列表分割,每一个jsp页面都读取当前页面编号,最初这个编号设置为1,点击其他页时就用页面编号与页面大小通过计算出来。明白不?
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
2698096
2009-06-04 · TA获得超过100个赞
知道答主
回答量:103
采纳率:0%
帮助的人:64.9万
展开全部
我也是网上找的,希望能帮到你。

大部分网站架构都是基于MVC,通常jsp作为显示层,或者用模板技术作为显示层,在此层将会显示查询记录总数,以及当前页,还有页面导航,以及显示改页的记录(Model),.servlet通常作为控制层,用于收集查询条件,调用业务Bean,,完成翻页查询,并将结果返回到显示层.对于分页来说,每层次的主要任务如下: * J5 r' G0 w" v4 s. b- E0 D4 T
显示层: 取出记录总数,并显示出来; 指示当前在第几页;显示翻页导航条,如象google那样的翻页,或者象yahoo那样的翻页风格;取出记录集,并显示出来,通常,一页显示10-30条,并且,这是可以配置的 - x* U& x4 @- p$ P" t
控制层:查询的时候,将用户输入的查询条将,通常表现形式是QueryValue放入会话中,以便下次翻页的时候重新取出查询条件;如果是第一次查询,调用业务Bean,需要查询记录总数,并查询出第一页的结果集,并传到显示层。如果是其后后的翻页,则需要调用业务Bean查询指定范围内的结果集,并传到显示层 4 U4 K7 q$ E7 M
业务Bean:业务Bean提供按照QueryValue查询出合乎条件总数
- E, Z; I( O# O: N4 N% E0 B" r8 g! X业务Bean提供按照QueryValue,以及 范围(startIndex,endIndex)查询合乎条件的结果集 ' W/ L& o0 ~$ p+ t; `$ D: }5 }5 k, I
现在举个例子,分别从业务Bean,控制层,显示层的具体实现来完成分页
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
落曳声痕
2009-06-05 · 超过27用户采纳过TA的回答
知道答主
回答量:56
采纳率:0%
帮助的人:74.2万
展开全部
1、每次提取一部分数据(mysql中容易操作,已提供了现成的sql语句),这样占用的内存较少,但访问数据库的次数增加了,自然数据库负荷增加。
2、把数据一次性提取出来,放到session中,再按分页需求,依次在session中提取,数据量较大时建议不要使用,内存消耗太大。
3、使用第三方数据库操作框架,比如Hibernate,这样你需要花时间好好学习它了。
祝你成功!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式