数据库分页Java实现.doc

数据库分页Java实现.doc

ID:57680881

大小:85.00 KB

页数:5页

时间:2020-08-31

数据库分页Java实现.doc_第1页
数据库分页Java实现.doc_第2页
数据库分页Java实现.doc_第3页
数据库分页Java实现.doc_第4页
数据库分页Java实现.doc_第5页
资源描述:

《数据库分页Java实现.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、MySQL分页主要是MySQL数据库内置LIMIT函数注意添加mysql的JAR包mysql-connector-java-5.1.13-bin.jar select * from table LIMIT 5,10;  // 检索记录行 6-15在中小数据量的情况下,这样的SQL足够用了,唯一需要注意的问题就是确保使用了索引。随着数据量的增加,页数会越来越多,查看后几页的SQL就可能类似:select * from content order by id desc limit 10000, 10 

2、一言以蔽之,就是越往后分页,LIMIT语句的偏移量就会越大,速度也会明显变慢。此时,我们可以通过2种方式:一,子查询的分页方式来提高分页效率 select* from'content'whereid <= (selectidfrom'content'orderbyid desc LIMIT ".($page-1)*$pagesize.", 1) orderbyid desc LIMIT $pagesize;为什么会这样呢?因为子查询是在索引上完成的,而普通的查询时在数据文件上完成的,通常来说,索引

3、文件要比数据文件小得多,所以操作起来也会更有效率。 经过飘易的实测,使用子查询的分页方式的效率比纯LIMIT提高了14-20倍!二,JOIN分页方式select* from'content'ast1 join(selectid from'content'orderbyid desc LIMIT ".($page-1)*$pagesize.", 1) ast2 wheret1.id <= t2.id orderbyt1.id desc LIMIT $pagesize;  经过我的测试,join分页和

4、子查询分页的效率基本在一个等级上,消耗的时间也基本一致。MySQL分页Java实现 <%@pagelanguage="java"import="java.util.*,java.sql.*"pageEncoding="gbk"%>MySQL分页

<%//加载驱动Class.forName("com.mysql.jdbc.Driver");//得到连接Connectionct=DriverManager.getConnection("jdbc:mysql://localhost:3306/tour","root","root");Statementsm=ct.createStatement();//接收pageNow参数Strings_pageNow=request.getParameter("pag

6、eNow");intpageNow=1;if(s_pageNow!=null){pageNow=Integer.parseInt(s_pageNow);}//查询总页数intpageCount=0;//当前为第几页intpageSize=3;//每页显示几条记录introwCount=0;//总共有多少条记录ResultSetrs=sm.executeQuery("selectcount(*)fromusers");if(rs.next()){rowCount=rs.getInt(1);if(ro

7、wCount%pageSize==0){pageCount=rowCount/pageSize;}else{pageCount=rowCount/pageSize+1;}}rs=sm.executeQuery("select*fromuserslimit"+((pageNow-1)*pageSize+1)+","+pageNow*pageSize+"");while(rs.next()){out.println("

");out.println("");out.println("");out.println("");out.println("");}out.println("");//打印总页数for(inti=1;i"+"第"+i+"页"+"");}out.

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
用户名所在城市<

5、/td>

职业
"+rs.getString(2)+

8、"

"+rs.getString(5)+""+rs.getString(6)+"