首页 > 代码库 > JavaWeb分页显示内容——数据库分页查询
JavaWeb分页显示内容——数据库分页查询
转载请注明原文地址:
在开发过程中,经常做的一件事,也是最基本的事,就是从数据库中查询数据,然后在客户端显示出来。当数据少时,可以在一个页面内显示完成。然而,如果查询记录是几百条、上千条呢?直接一个页面显示完全的话,表格得多长啊。。。。。。这时,我们可以用分页技术。
何为分页?效果图如下:
这里总共查询了100条记录,如果一次性显示的话表格会很多行,用户体验不佳。而我们采用分页显示的话,一页显示10条记录,共十页。用户可以自行翻阅,记录少,清晰显示。
下面谈谈分页效果的实现,思路有两种:
其一:一次查询,分批显示。
就是说,我们可以执行一个数据库查询操作,得到结果集rs。然后,通过指针的移动来显示当前页面的记录。这样,就可以以 rs.absolute(当前页面号*每页记录数)定位到当前页的第一条记录,然后通过while循环显示n条记录(n为每页显示记录数)。在跳页时,只需修改currentPage,即可在重定位到下一页时把当前页面号改掉,重新定位记录指针,通过while遍历显示n条记录。
参考代码:
<%
int intPageSize = 10; //一页显示的记录数 int intRowCount; //记录总数 int intPageCount; //总页数 String strPage; //从表单或URL传送的待显示页码 int intPage; //待显示页码 ,由strPage转换成的整数 //将记录指针定位到待显示页的第一条记录上 sqlRst.absolute((intPage - 1) * intPageSize + 1); //显示数据 int i=0; String user_id, user_name, user_sex, user_phone, user_age; while (i < intPageSize && !sqlRst.isAfterLast()) { user_id = sqlRst.getString(1); user_name = sqlRst.getString(2); user_sex = sqlRst.getString(3); user_phone = sqlRst.getString(4); user_age = sqlRst.getString(5); %> <tr> <td><%=user_id%></td> <td><%=user_name%></td> <td><%=user_sex%></td> <td><%=user_phone%></td> <td><%=user_age%></td> </tr> <% sqlRst.next();//移动记录指针指向下一条记录 i++;//统计当前页已显示多少条记录 } %>
这种方法是伪分页,是在客户端实现的分页效果。
其二:在服务端分页。跳到第n页才查询、显示第n页内容。
JavaWeb分页显示内容——数据库分页查询
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。