package com.exjor.webdemo; public class PagerItem { public PagerItem() { } public PagerItem(Integer pPageSize) { this.setPageSize(pPageSize); reset(); } public PagerItem(Integer pPageSize, Integer pPageIndex) { this.setPageSize(pPageSize); this.setPageIndex(pPageIndex); reset(); } public PagerItem(Integer pPageSize, Integer pPageIndex, Integer pRowCount) { this.setPageSize(pPageSize); this.setPageIndex(pPageIndex); this.setRowCount(pRowCount); reset(); } public PagerItem changePageSize(Integer pPageSize) { setPageSize(pPageSize); return reset(); } public PagerItem changePageIndex(Integer pPageIndex) { setPageIndex(pPageIndex); return reset(); } public PagerItem changeRowCount(Integer pRowCount) { setRowCount(pRowCount); return reset(); } public PagerItem reset() { return resetPager().resetPageNum(); } public PagerItem resetPager() { if (pageSize < 1) { pageSize = 10; } pageCount = (rowCount + pageSize - 1) / pageSize; if (pageIndex < 0) { pageIndex = 1; } if (pageCount > 1 && pageIndex > pageCount) { pageIndex = pageCount; } return this; } public Integer getPageSize() { return pageSize; } public void setPageSize(Integer pageSize) { this.pageSize = pageSize; } public Integer getPageIndex() { return pageIndex; } public void setPageIndex(Integer pageIndex) { this.pageIndex = pageIndex; } public Integer getRowCount() { return rowCount; } public void setRowCount(Integer rowCount) { this.rowCount = rowCount; } public Integer getPageCount() { return pageCount; } public void setPageCount(Integer pageCount) { this.pageCount = pageCount; } private Integer pageSize = 10; private Integer pageIndex = 1; private Integer rowCount = 0; private Integer pageCount = 1; private Integer startIndex = 0; public Integer getStartIndex() { if (pageIndex > 1) { startIndex = (pageIndex - 1) * pageSize; } if (startIndex < 0) { startIndex = 0; } return startIndex; } public void setStartIndex(Integer startIndex) { this.startIndex = startIndex; } public void parsePageSize(String pPageSize) { if (!SysFun.isNullOrBlank(pPageSize)) { pageSize = SysFun.parseInt(pPageSize); } } public void parsePageIndex(String pPageIndex) { if (!SysFun.isNullOrBlank(pPageIndex)) { pageIndex = SysFun.parseInt(pPageIndex); } } public static void main(String[] args) { System.out.println("Test"); PagerItem pager = new PagerItem(5, 3).changeRowCount(100); System.out.println("limit " + pager.getStartIndex() + ", " + pager.getPageSize()); } private String url = ""; public String getUrl() { return url; } public void setUrl(String url) { this.url = url; } private String paramPageSize = "pagesize"; private String paramPageIndex = "pageindex"; public String getParamPageSize() { return paramPageSize; } public void setParamPageSize(String paramPageSize) { this.paramPageSize = paramPageSize; } public String getParamPageIndex() { return paramPageIndex; } public void setParamPageIndex(String paramPageIndex) { this.paramPageIndex = paramPageIndex; } public String generalUrl_ByPageNum(int pPageNum) { String str = this.url; if (pPageNum < 0) { pPageNum = 1; } str = SysFun.resetUrlQSValue(str, getParamPageSize(), "" + pageSize); str = SysFun.resetUrlQSValue(str, getParamPageIndex(), "" + pPageNum); return str; } public PagerItem changeUrl(String pUrl) { this.url = pUrl; resetPageUrl(); return this; } public PagerItem resetPageNum() { firstPageNum = 1; lastPageNum = pageCount; prevPageNum = pageIndex - 1; if (prevPageNum < firstPageNum) { prevPageNum = 1; } nextPageNum = pageIndex + 1; if (nextPageNum > lastPageNum) { nextPageNum = lastPageNum; } return this; } public PagerItem resetPageUrl() { resetPageNum(); firstPageUrl = generalUrl_ByPageNum(firstPageNum); lastPageUrl = generalUrl_ByPageNum(lastPageNum); prevPageUrl = generalUrl_ByPageNum(prevPageNum); nextPageUrl = generalUrl_ByPageNum(nextPageNum); return this; } private Integer firstPageNum = 1; private Integer lastPageNum = 1; private Integer prevPageNum = 1; private Integer nextPageNum = 1; private String firstPageUrl; private String lastPageUrl; private String prevPageUrl; private String nextPageUrl; public Integer getFirstPageNum() { return firstPageNum; } public void setFirstPageNum(Integer firstPageNum) { this.firstPageNum = firstPageNum; } public Integer getLastPageNum() { return lastPageNum; } public void setLastPageNum(Integer lastPageNum) { this.lastPageNum = lastPageNum; } public Integer getPrevPageNum() { return prevPageNum; } public void setPrevPageNum(Integer prevPageNum) { this.prevPageNum = prevPageNum; } public Integer getNextPageNum() { return nextPageNum; } public void setNextPageNum(Integer nextPageNum) { this.nextPageNum = nextPageNum; } public String getFirstPageUrl() { return firstPageUrl; } public void setFirstPageUrl(String firstPageUrl) { this.firstPageUrl = firstPageUrl; } public String getLastPageUrl() { return lastPageUrl; } public void setLastPageUrl(String lastPageUrl) { this.lastPageUrl = lastPageUrl; } public String getPrevPageUrl() { return prevPageUrl; } public void setPrevPageUrl(String prevPageUrl) { this.prevPageUrl = prevPageUrl; } public String getNextPageUrl() { return nextPageUrl; } public void setNextPageUrl(String nextPageUrl) { this.nextPageUrl = nextPageUrl; } }
来源:http://www.cnblogs.com/LingRenne/p/7821134.html