java:自己写的实现翻页功能的类

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

在java中,翻页比较头疼,下面是我写的一个实现翻页功能的类

请高手指正。

我的体会:

优点:简单好用

缺点:一次就从数据库中读出了所有的信息。不知如何改进,请指教

public class selectPage implements java.io.Serializable{ //我的翻页类

private int pageRecord; //分页单位=10

private int currentPage; //当前页=1

private ArrayList allInfo; // 记录集

private int allRow; //数据表总记录数=0

private int pages; //总页数=0

public selectPage(ArrayList list) {

this.allInfo = list;

this.pageRecord = 10;

this.currentPage = 1;

this.allRow = list.size();

this.pages = allRow/10;

if(allRow%10!=0)this.pages++;

}

public void setPageRecord(int pgrecord){

pageRecord = pgrecord;

}

public void setPages(){ //根据pageRecord改变总页

int p = allRow/pageRecord;

if(allRow%pageRecord!=0)p++;

this.pages = p;

}

public void setCurrentPage(int curpage){

currentPage = curpage;

}

public int getPageRecord(){

return pageRecord;

}

public int getPages(){

return pages;

}

public int getCurrentPage(){

return currentPage;

}

public int getAllRow(){

return allRow;

}

public ArrayList getPage(){

ArrayList tempList = new ArrayList();

int endindex = pageRecord*currentPage > allRow? allRow:pageRecord*currentPage;

for(int i=pageRecord*(currentPage-1);i<endindex;i++){

tempList.add(allInfo.get(i));

}

return tempList;

}

public String toString(){

String tempStr = "pageRecord="+this.getPageRecord()+"currentPage="+this.getCurrentPage()+"allRow="+this.getAllRow()+"pages="+this.getPages();

return tempStr;

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航