基于MySql数据库的通用分页
通用分页核心思路:将上一次查询请求再发一次,只不过页码变了
实现步骤:
1)先查询全部数据
Junit测试
baseDao、CallBack
2)通用分页实现
pagebean
-
PageBean
分页三要素
page 页码 视图层传递过来
rows 页大小 视图层传递过来
total 总记录数 后台查出来pagination 是否分页 视图层传递过来
getStartIndex() 基于MySql数据库分页,获取分页开始标记
url 请求路径 视图层传递过来
map 参数集合 视图层传递过来
setRequest(HttpServletRequest req) 设置请求参数
getMaxPager() 获取最大页码
getProviousPager() 获取上一页
getNextPager() 获取下一页
-
后台
2.1 entity
2.2 dao
BaseDao
1)匿名内部接口
2)分页查询方法,接口方法传参
(返回:总记录数+指定页码并满足条件的记录集)
3)二次查询的条件要一致
getCountSql()/getPagerSql()
2.3 控制层
Servlet
req.getContextPath();//获取根目录
req.getServletPath();//获取请求路径 -
junit
java单元测试/白盒测试
setUp
tearDown
测试用例Servlet中的init和destory方法只会运行一次
Junit中的setUp和tearDown方法是根据方法数量来决定的 -
视图层
PageTag点击分页按钮,将上一次的请求在发(请求)一次
注1:不能将分页表单嵌套到其它表单中,否则不能提交表单!!!
不能将分页表单嵌套到其它表单中,否则不能提交表单!!!
不能将分页表单嵌套到其它表单中,否则不能提交表单!!!