首先是將分頁所需的一些個資源 ,抽象出一個javabean對象—PageBean:
先把需要分頁的數據或是記錄都查詢出來 存入一個集合類里如List或是Vector,
然后利用其sublist(int findex,int eindex)方法,獲取需要分頁的數據或記錄
1 public class PageBean { 2 private int curPage; //當前頁 3 private int pageCount; //總頁數 4 private int rowsCount; //總行數 5 private int pageSize=10; //每頁多少行 6 7 8 9 public PageBean(int rows){ 10 11 this.setRowsCount(rows); 12 if(this.rowsCount % this.pageSize == 0){ 13 this.pageCount=this.rowsCount / this.pageSize; 14 } 15 else if(rows<this.pageSize){ 16 this.pageCount=1; 17 } 18 else{ 19 this.pageCount=this.rowsCount / this.pageSize +1; 20 } 21 } 22 23 24 public int getCurPage() { 25 return curPage; 26 } 27 public void setCurPage(int curPage) { 28 this.curPage = curPage; 29 } 30 public int getPageCount() { 31 return pageCount; 32 } 33 public void setPageCount(int pageCount) { 34 this.pageCount = pageCount; 35 } 36 public int getPageSize() { 37 return pageSize; 38 } 39 public void setPageSize(int pageSize) { 40 this.pageSize = pageSize; 41 } 42 public int getRowsCount() { 43 return rowsCount; 44 } 45 public void setRowsCount(int rowsCount) { 46 this.rowsCount = rowsCount; 47 } 48 }
分頁展示如下:
1 List clist=adminbiz.queryNotFullCourse();//將查詢結果存放在List集合里 2 PageBean pagebean=new PageBean(clist.size());//初始化PageBean對象 3 //設置當前頁 4 pagebean.setCurPage(page); //這里page是從頁面上獲取的一個參數,代表頁數 5 //獲得分頁大小 6 int pagesize=pagebean.getPageSize(); 7 //獲得分頁數據在list集合中的索引 8 int firstIndex=(page-1)*pagesize; 9 int toIndex=page*pagesize; 10 if(toIndex>clist.size()){ 11 toIndex=clist.size(); 12 } 13 if(firstIndex>toIndex){ 14 firstIndex=0; 15 pagebean.setCurPage(1); 16 } 17 //截取數據集合,獲得分頁數據 18 List courseList=clist.subList(firstIndex, toIndex);
這就是分頁的核心代碼啦,根據不同的需要可以進行靈活的修改~~~~~~~