分页组件
我是菜鸟级别的,大家一定要指出缺点来,我也没写过什么项目,只是觉得写这么个类,对一些分页的程序有些帮助,大家使劲批评就行,呵呵
,字符串连接一般用StringBuffer比较好,我都是用的String的+号连接符
public class PageBean {
private int total;
private int count;
private int begin;
private int end;
private String linkString=null;
private int thispage;
private String link=null;
private String[] parameters=null;
public void makeParameters(){
int yushu=total%count;
int pagecount;
if(yushu==0)
pagecount=total/count;
else
pagecount=(total/count)+1;
if(thispage<=1){
thispage=1;
}else if(thispage>=pagecount){
thispage=pagecount;
}
String firstlink="<a href="+link+"?thispage=1";
String lastlink="<a href="+link+"?thispage="+pagecount;
String prevlink="<a href="+link+"?thispage="+(thispage-1);
String nextlink="<a href="+link+"?thispage="+(thispage+1);
if(parameters!=null){
for(String parameter:parameters){
firstlink+="&"+parameter;
lastlink+="&"+parameter;
prevlink+="&"+parameter;
nextlink+="&"+parameter;
}
}
firstlink+=">第一页</a>";
lastlink+=">末一页</a>";
prevlink+=">上一页</a>";
nextlink+=">下一页</a>";
linkString=firstlink+"//"+prevlink+"//第"+thispage+"页/共"+pagecount+"页//"+nextlink+"//"+lastlink;
begin=(thispage-1)*count+1;
if(begin<=1)
begin=1;
end=begin+count;
//System.out.println("total:"+total+" begin:"+begin+"----end:"+end);
}
public void setCount(int count) {
this.count = count;
}
public void setTotal(int total) {
this.total = total;
}
public int getBegin() {
return begin;
}
public int getEnd() {
return end;
}
public String getLinkstring() {
return linkString;
}
public void setThispage(int thispage) {
this.thispage = thispage;
}
public void setLink(String link) {
this.link = link;
}
public void setParameters(String[] parameters) {
this.parameters = parameters;
}
public static void main(String agers[]){
PageBean page=new PageBean();
page.setLink("view.do");
page.setThispage(1);
page.setCount(20);
page.setTotal(100);
String[] parameters={"phone=1234","linkid=111"};
page.setParameters(parameters);
page.makeParameters();
String pagelink=page.getLinkstring();
System.out.println(pagelink);
System.out.println(page.getBegin());
System.out.println(page.getEnd());
}
}
[该贴被brucehu于2008-01-18 17:36修改过]