您的位置:首页 > 数据库 > MySQL

基于MySQL的分页技术

2013-11-10 19:36 393 查看
需求:从数据库查询出来的记录数太多,全都放在一张页面上显示很不美观,观察起来也很不方便,就需要将很多的记录分页显示,通过上一页下一页来显示数据,就像淘宝网查询商品后返回的列表一样,在最下面会有跳转下一页的选项,这种技术一般通过数据库实现

思路:

1, 使用三层架构模式,构建整个工程。

2, 首先分析包结构,本项目会用到domain;utils;dao;service;servlet;init包,其中init包中有独立程序,用于给数据库的表中添加N多条记录。

3, 然后分析用到的技术,用到了c3p0数据源技术,DBUtils技术,mysql驱动jar,BeanUtils,JDBC,

4, 从dao层开始倒序架构,

5, 整个工程中的核心技术:

1),数据库的限制查询 select * from users limit 0,10;

表示从第0条开始查,查出10条。

2),建立一个Page的JavaBean代表当前页面信息,其中包括查询出的记录列表userList;当前页面号pageNum;总记录数userRecord;总页数totalPageNum;缩略查询的起始页码编号startPage;缩略查询的终止页码编号endPage。在service层获取这些数据,并封装到一个page对象中,返回给servlet层,servlet层将page数据存到request域中,转发给显示页面,显示页面通过el表达式获取数据,并显示,

3),显示页面的实现:通过<c:forEach>标签遍历结果集,输出所有信息;分页处理时,通过在超链接尾部追加参数pageNum来告诉servlet当前是第几页,servlet再通过service,dao访问数据库,获取pageNum的页面信息,

4),跳转到…页的实现:通过js实现,在js中获取文本框的值,并判断其是否符合要求,例如:不可以是数字以外的字符,不可以超出页数边界。通过window.location定向到查询的servlet,并将获取的页数作为参数追加到超链接的尾部。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: