高分求救JSP分页问题
下面是源码,后面我会说明问题:
//---------------------------------
//分页的配置
public class PageConf
{
public static final int PAGE_SIZE_NORMAL = 15;
}
//--------------------------------
//page类
public class Page implements Serializable {
private static final long serialVersionUID = 1L;
public static Page EMPTY_PAGE=new Page();
private int rowsPerPage = PageConf.PAGE_SIZE_NORMAL; //页面大小,记录条数
private int start; //本页数据在数据库中的起始位置
private int curRowCount ,maxRowCount; //本页包含的数据条数
private Vector data; //当前页的数据
private int curPageNo; //当前页码
private int maxPageNo; //总页数
/**
/*默认构造方法,只构造空页
*
*
*/
public Page()
{
this.init(0,0,0,PageConf.PAGE_SIZE_NORMAL,new Vector());
}
public Page(int start, int curRowCount , int maxRowCount, int rowsPerPage, Vector data)
{
this.init(start, curRowCount , maxRowCount, rowsPerPage,data);
}
/** 分页数据初始方法,由子类调用
* @param start 本页数据在数据库中的起始位置
* @param curRowCount 本页包含的数据条数
* @param maxRowCount 数据库中总记录条数
* @param rowsPerPage 本页容量
* @param data 本页包含的数据
*/
public void init(int start, int curRowCount , int maxRowCount, int rowsPerPage, Vector data)
{
this.curRowCount =curRowCount ;
this.rowsPerPage = rowsPerPage;
this.start = start;
this.maxRowCount = maxRowCount;
this.data=data;
if (curRowCount > maxRowCount) //本页包含记录数大于总的记录数
{
// throw new
RuntimeException( "记录条数大于总条数?! ");
}
this.curPageNo = (start -1)/rowsPerPage +1;
this.maxPageNo = (maxRowCount + rowsPerPage -1) / rowsPerPage;
if (maxRowCount==0 && curRowCount ==0)
{
this.curPageNo = 1;
this.maxPageNo = 1;
}
//