基于代理慢于new,記錄一個java分頁類
import java.util.List;
/**
* 分頁類
* @param <T>
*/
public class PageUtil<T> {
private int totalPageCount;//總頁數
private int pageSzie;//每頁顯示的數量
private int totalCount;//資訊的總數量
private int currPageNo;//目前頁碼
private List<T> newList;//每頁資訊的集合
public int getTotalPageCount() {
return totalPageCount;
}
public void setTotalPageCount(int totalPageCount) {
this.totalPageCount=totalPageCount;
}
public int getPageSzie() {
return pageSzie;
}
public void setPageSzie(int pageSzie) {
if(pageSzie>0) {
this.pageSzie = pageSzie;
}
}
public int getTotalCount() {
return totalCount;
}
public void setTotalCount(int totalCount) {
if(totalCount>0) {
this.totalCount=totalCount;
//計算總頁數
totalPageCount=this.totalCount % pageSzie==0 ? (this.totalCount/pageSzie):(this.totalCount/pageSzie+1);
}
}
public int getCurrPageNo() {
if(totalPageCount==0) {
return 0;
}
return currPageNo;
}
public void setCurrPageNo(int currPageNo) {
if(currPageNo>0) {
this.currPageNo = currPageNo;
}
}
public List<T> getNewList() {
return newList;
}
public void setNewList(List<T> newList) {
this.newList = newList;
}
}
業務層調用
/**
* 分頁查詢資訊
* @param index 頁碼
* @param pagesize 每頁顯示的資訊數量
* @return
*/
public PageUtil<Company> getPage(String cName, int index, int pagesize){
PageUtil<Company> cardsPages=new PageUtil<Company>();
cardsPages.setPageSzie(pagesize);
cardsPages.setCurrPageNo(index);
//擷取總行數
int coutsize=companyMapper.getCount(cName);
cardsPages.setTotalCount(coutsize);
//擷取目前頁資料起始點
index=(index-1)*pagesize;
cardsPages.setNewList(companyMapper.searchList(cName,index,pagesize));
return cardsPages;
}