这是一个完善的分页工具类,可以快速实现分页技术
import java.util.List; public class Page<T> { /** * pageNum:当前页码 * rowNum:起始行号 * totalPages:总页数 * totalCount:总条数 * pageCount:当前页几条 * list:当前页的内容 */ private Integer pageNum; private Integer rowNum; private Integer totalPages; private Integer totalCount; private Integer pageCount = 5; private List<T> list; public Integer getPageNum() { return pageNum; } public void setPageNum(Integer pageNum) { if (pageNum == null) { pageNum = 1; } if (pageNum <= 0) { pageNum = 1; } if (pageNum >= totalPages && totalPages > 0) { pageNum = totalPages; } this.pageNum = pageNum; } public Integer getRowNum() { return rowNum; } public void setRowNum() { this.rowNum = (pageNum - 1) * pageCount; } public Integer getTotalPages() { return totalPages; } public void setTotalPages() { this.totalPages = (totalCount % pageCount == 0) ? (totalCount / pageCount) : (totalCount / pageCount + 1); } public Integer getTotalCount() { return totalCount; } public void setTotalCount(Integer totalCount) { this.totalCount = totalCount; } public Integer getPageCount() { return pageCount; } public void setPageCount(Integer pageCount) { if (pageCount == null) { pageCount = 10; } if (pageCount <= 0) { pageCount = 10; } this.pageCount = pageCount; } public List<T> getList() { return list; } public void setList(List<T> list) { this.list = list; } @Override public String toString() { return "Page{" + "pageNum=" + pageNum + ", rowNum=" + rowNum + ", totalPages=" + totalPages + ", totalCount=" + totalCount + ", pageCount=" + pageCount + ", list=" + list + '}'; } //必须使用此顺序,初始化当前的对象 public void init(Integer pageNum, Integer pageCount, Integer totalCount) { setTotalCount(totalCount); setPageCount(pageCount); setTotalPages(); setPageNum(pageNum); setRowNum(); } }
- 前端必填参数 其他查询参数可以忽略,根据项目规定非必要模糊查询参数
pageNum:页码(第几页)
pageCount:该页显示条数(信息条数) - 后端处理:
a、仔细观看Page<t> page = new Page<t>这个类的构造,以及实现方法的构造
b、getSum(模糊查询的参数-非必要的) 获取当前查询条件下有多少条信息
c、page.init(pageNum,pageCount,getSum()) 初始化当前page对象
d、获取SQL中limit n,m 中的你n,m这两个提提交
e、n = page.getRowNum(); m = page.getPageCount();
f、获取当前page中List<> list
g、List<t> list = getList(模糊查询参数,n,m)
h、page.list = list
i、 return page ; 这就可以了</t></t></t>