网上看到过很多分页的程序,我是觉得有些太繁琐,自己写一个一个功能很简单的组建,只需要几个set属性,然后就可以得到分页导航条和分页需要的一些值,
可以设置导航连接中的参数个数,代码很简单,但是功能还是很好用的,其中有不足指出希望大家指出,很是感谢,有些地方用了好多String的“+”运算,可以改成StringBuffer的append;
package com.hzg.business.bean;
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;
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);
}
}
附件:PageBean.java(2K)