复杂分页
前端
提交
rows currentPage
name address email
展示(复杂)
数据
分页效果
显示页码数 ${pb.totalPage}
显示总个数 ${pb.totalCount}
遍历显示页码
<c:forEach begin="0" end="${pb.totalPage}" var="i"
<li>${i}
当前页
<c:if test="{i == pb.currentPage}"
<当前页的样式
<c:if test="{i != pb.currentPage}"
<li>${i}
上一页/下一页
pb.currentPage -1 <0
pb.currentPage = 1
pb.currentPage + 1 > pb.totalPage
pb.currentPage=pb.totalPage
后台
web
condition = request.getParameterMap()
每页显示数 = request.getParameter("rows")
当前页 = request.getParameter("currentPage")
PageBean pb = service.findByPage(map)
request.setAttribuite(pb)
request.setAttribuite(condition)
request.getRequestDispatcher().forward()
service
new PageBean()
set方法
当前页
每页显示数
总条数 -> dao
数据 -> dao
总页数 -> 自己计算
return pb;
dao
查询个数
SELECT COUNT(*) FROM user WHERE 1=1
条件我们需要自己拼接
查询数据
SELECT * FORM user WHERE 1=1
拼接条件
拼接 LIMIT ?,? |
|