专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »Java教程 » php分页类:贴一个偶写的分页类 »正文

php分页类:贴一个偶写的分页类

来源: 发布时间:星期三, 2008年9月10日 浏览:210次 评论:0
抽象类
==========================================================
import java.util.ArrayList;
import java.sql.Connection;
import java.sql.ResultSet;

import com.xxx.util.DBTool;

/**
* <pre>
* 分页类.默认页面大小为20
* 这是一个抽象类。子类需要重构方法selResult()
* </pre>
*/
public abstract class PageList {

/** 以下成员变量在子类中可视 */
protected final static int MIN_PAGE_SIZE = 20;//默认页面大小
protected int pageSize;//页面大小
protected int curPage;//当前页页码
protected int prePage;//上一页页码
protected int nxtPage;//下一页页码
protected int totalPage;//总页码数
protected int totalItem;//总条目数
protected String sql;//选择条件
protected ArrayList result;//结果集
protected int from;//开始的游标位置

/** 私有变量 */
private boolean hasFindResult = false;//标志是否已经查找了结果
//保证loadResult只进行一次


/**
* 构造器.默认页面大小为20
* @param sql
* @param pageNo
*/
public PageList(String sql, int pageNo) {
init(sql, MIN_PAGE_SIZE, pageNo);
}

/**
* 构造器
* @param sql 条件SQL
* @param pageSize 页面大小
* @param pageNo 页码
*/
public PageList(String sql, int pageSize, int pageNo) {
init(sql, pageSize, pageNo);
}

protected void init(String sql, int pageSize, int pageNo) {
this.sql = sql;
this.pageSize = (pageSize<=0?MIN_PAGE_SIZE:pageSize);
this.curPage = (pageNo<=0?1:pageNo);
}

/**
* 获取页面大小
*/
public int getPageSize() {
if (!this.hasFindResult) {
this.loadResult();
}
return this.pageSize;
}

/**
* 获取当前页码
*/
public int getCurPage() {
if (!this.hasFindResult) {
this.loadResult();
}
return this.curPage;
}

/**
* 获取前一页的页码
*/
public int getPrePage() {
if (!this.hasFindResult) {
this.loadResult();
}
return this.prePage;
}

/**
* 获取后一页的页码
*/
public int getNxtPage() {
if (!this.hasFindResult) {

相关文章

读者评论

  • 共0条 分0页

发表评论

  • 昵称:
  • 内容: