package com.qxueyou.scc.base.model; public class Pager { /* * 每页显示条数 */ private int pageSize; /* * 当前页码 */ private int pageNum; /* * 记录总数 */ private int totalCount; public Pager(){ //constructor } public Pager(int pageSize,int pageNum){ this.pageSize=pageSize; this.pageNum=pageNum; } public int getPageSize() { return pageSize <= 0?Integer.MAX_VALUE:pageSize; } public void setPageSize(int pageSize) { this.pageSize = pageSize; } public int getPageNum() { return pageNum <= 0?1:pageNum; } public int getOffset() { return pageNum <= 1?0:(pageNum-1)*this.getPageSize(); } public void setPageNum(int pageNum) { this.pageNum = pageNum; } public int getTotalCount() { return totalCount; } public void setTotalCount(int totalCount) { this.totalCount = totalCount; } /** * 计算总页数 * @return */ public int getPageCount(){ return totalCount%pageSize>0?totalCount/pageSize+1:totalCount/pageSize; } /** * 计算分页栏起始页 * @return */ public int getPageDispayStart(){ int startGap = Math.min(pageNum-1,2); int endGap = Math.min(getPageCount()-pageNum,2); if(startGap<=endGap){ return Math.max(pageNum-startGap,1); }else{ return Math.max(pageNum-(4-endGap),1); } } /** * 计算分页栏结束页 * @return */ public int getPageDispayEnd(){ int startGap = Math.min(pageNum-1,2); int endGap = Math.min(getPageCount()-pageNum,2); if(startGap<=endGap){ return Math.min(pageNum+(4-startGap),getPageCount()); }else{ return Math.min(pageNum+endGap,getPageCount()); } } }