这是一个完善的分页工具类,可以快速实现分页技术
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>

京公网安备 11010502036488号