package cn.gzsxt.util;
import java.util.List;//封装了一个页面的全部信息
public classPageUtil {private int currPage; //当前页
private int pageSize; //每页多少条数据
private int navCount; //导航条中的总数字
private int rowCount; //总数据量
private int nextPage; //下一页
private int prevPage; //上一页
private int pageCount; //总页数
private int firstPage; //首页
private int lastPage; //尾页
private int startNav; //起始导航数字
private int endNav; //结束导航数字
private List pageData; //一页的数据内容
public intgetCurrPage() {returncurrPage;
}public void setCurrPage(intcurrPage) {this.currPage =currPage;
}public intgetPageSize() {returnpageSize;
}public void setPageSize(intpageSize) {this.pageSize =pageSize;
}public intgetNavCount() {returnnavCount;
}public void setNavCount(intnavCount) {this.navCount =navCount;
}public intgetRowCount() {returnrowCount;
}public void setRowCount(introwCount) {this.rowCount =rowCount;
}public intgetNextPage() {returnnextPage;
}public void setNextPage(intnextPage) {this.nextPage =nextPage;
}public intgetPrevPage() {returnprevPage;
}public void setPrevPage(intprevPage) {this.prevPage =prevPage;
}public intgetPageCount() {returnpageCount;
}public void setPageCount(intpageCount) {this.pageCount =pageCount;
}public intgetFirstPage() {returnfirstPage;
}public void setFirstPage(intfirstPage) {this.firstPage =firstPage;
}public intgetLastPage() {returnlastPage;
}public void setLastPage(intlastPage) {this.lastPage =lastPage;
}public intgetStartNav() {returnstartNav;
}public void setStartNav(intstartNav) {this.startNav =startNav;
}public intgetEndNav() {returnendNav;
}public void setEndNav(intendNav) {this.endNav =endNav;
}publicList getPageData() {returnpageData;
}public voidsetPageData(List pageData) {this.pageData =pageData;
}publicPageUtil() {
}public PageUtil(int currPage, int pageSize, int navCount, introwCount) {this.currPage =currPage;this.pageSize =pageSize;this.navCount =navCount;this.rowCount =rowCount;this.pageCount = (int) Math.ceil(this.rowCount / (this.pageSize * 1.0));this.firstPage = 1;this.lastPage = this.pageCount;//避免传过来的currPage不在首页和尾页之间
this.currPage = this.currPage < this.firstPage ? this.firstPage
:this.currPage;this.currPage = this.currPage > this.lastPage ? this.firstPage
:this.currPage;this.prevPage = this.currPage - 1 <= 0 ? this.firstPage
:this.currPage - 1;this.nextPage = this.currPage + 1 >= this.lastPage ? this.lastPage
:this.currPage + 1;//计算起始导航数字和结束导航数字: 始终保证this.endNav - this.startNav = this.navCount - 1;
this.startNav = (this.currPage - this.navCount / 2) < this.firstPage ? this.firstPage
: (this.currPage - this.navCount / 2);this.endNav = (this.startNav + this.navCount - 1) > this.lastPage ? this.lastPage
: (this.startNav + this.navCount - 1);if (this.pageCount > this.navCount) {this.startNav = this.endNav - this.startNav < this.navCount - 1 ? this.endNav- this.navCount + 1:this.startNav;
}
}public static voidmain(String[] args) {
PageUtil pu= new PageUtil(1, 10, 10, 89);
System.out.println("总页数:" +pu.getPageCount());
System.out.println("上一页:" +pu.getPrevPage());
System.out.println("下一页:" +pu.getNextPage());
System.out.println("起始导航数字:" +pu.getStartNav());
System.out.println("结束导航数字:" +pu.getEndNav());
}
}
更多推荐
java 分页对象合并_java分页对象封装
发布评论