分页的实现步骤.docVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
分页的实现步骤.doc

为什么需要分页? 从客户角度来讲,数据内容过多,查看数据非常不便。 从服务器和网络的角度来讲,查这么多数据,传输这么多数据,是一种效率很低的做法。 分页的核心SQL: mysql--limit Select * from article limit 4,10; --取第一页的数据:limit 0,10 --取第二页的数据:limit 10,10 --取第三页的数据:limit 20,10 --基本的过程: --1.用户点击页号发送请求:channel.jsp?num=2 --2.服务器收到请求后,根据num参数的值,计算记录的起始索引:(num-1)*size --3.调用dao中的方法,该方法发送sql:select * from tb_forum_article limit 10,10; --4.根据dao返回的结果集内容,该内容封装到List中 --5.将list中的内容展示到页面上 2. oracle --rownum select r,ename,sal from (select rownum r, ename,sal from (select * from emp order by sal desc) t2 ) where r=5 and r=10; 分页处理,查处5到10的记录 最简单最原始的分页: 分页的简单过程: 用户点击第一页传递一个参数:Num=1到后台,服务器获取num=1将该参数传到Dao中,dao中:select * from tb_article where id10 limit ?,?;, ps.setint((num-1)*10),返回一个List,传递到jsp中进行显示,发送给客户端。 在Dao中增加方法: public static List getArticles(int cid,int startRow,int size){ String sql = select tb_forum_article.id,uname username,createTime,count,title + from tb_forum_article + join tb_user on tb_forum_article.userId=tb_user.id + where tb_forum_article.cid=? and tb_forum_article.type!=2 + limit ?,?; //小频道下所有的帖子 String sql2 = select tb_forum_article.id,uname username,createTime,count,tb_forum_article.title + from tb_forum_article + join tb_user on tb_forum_article.userId=tb_user.id + join tb_forum_channel on tb_forum_article.cid=tb_forum_channel.id + + where tb_forum_channel.pid=? and tb_forum_article.type!=2 + limit ?,?; //大频道下所有的帖子 return MyHib.selectRows(DBUtil.getMysqlConn(), isMainChannel(cid)?sql2:sql, new Object[]{ cid,startRow,size }, ArticleInfo.class); } 在JSP中调用Dao中的分页方法: % int cid = Integer.parseInt(request.getParameter(cid)); int num = Integer.parseInt(request.getParameter(num)); int size=10; int startRow = (num-1)*size; request.setAttribute(alist,ArticleService.getArticles(cid,startRow,size)); % c:forEach var=i begin=1 end=10

文档评论(0)

docinpfd + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5212202040000002

1亿VIP精品文档

相关文档