一个分页组件


网上看到过很多分页的程序,我是觉得有些太繁琐,自己写一个一个功能很简单的组建,只需要几个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) 

你可能感兴趣的:(bean)