JSP分页工具类

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-1 16:40   24   0

/**
 * 页面里的一页数据的对象
 * @author BluceYoung
 *
 */
public class PageUtil<T> {
 private int pageNo;//当前第几页
 private int pageCount;//共多少页
 private int pageSize=5;//每页显示多少条
 private int totalCount;//总数据条数
 List<T> listData=new ArrayList<T>();
 
 /**
  * 获取当前页码
  * @return
  */
 public int getPageNo() {
  return pageNo;
 }
 /**
  * 获取总页数
  * @return
  */
 public int getPageCount() {
  return pageCount;
 }
 /**
  * 获取每页数据条数
  * @return
  */
 public int getPageSize() {
  return pageSize;
 }
 /**
  * 获取总数据条数
  * @return
  */
 public int getTotalCount() {
  return totalCount;
 }
 /**
  * 获取本页数据集合
  * @return
  */
 public List<T> getListData() {
  return listData;
 }
 
 
 
 /**
  * 设置当前页码,下限1,上限pageCount
  * @param pageNo
  */
 public void setPageNo(int pageNo) {
  this.pageNo = pageNo;
  if(this.pageNo<1) {
   this.pageNo=1;
  }
  if(this.totalCount>0 && pageNo >pageCount) {//页码超过总页数
   this.pageNo=pageCount;//设置为末页
  }
 }
 /**
  * 设置每页数据条数
  * @param pageSize
  */
 public void setPageSize(int pageSize) {
  this.pageSize = pageSize;
 }
 /**
  * 设置总数据条数
  * @param totalCount
  */
 public void setTotalCount(int totalCount) {
  this.totalCount = totalCount;
  //计算总页数
  this.pageCount=totalCount/pageSize;
  if(totalCount%pageSize>0) {//页数不够,得加一页
   this.pageCount++;
  }
 }
 /**
  * 设置当前页数据
  * @param listData
  */
 public void setListData(List<T> listData) {
  this.listData = listData;
 }
 
 /**
  * 实例化一个数据页,确定:每页条数、总数据数、总页数
  * @param pageSize
  * @param totalCount
  */
 public PageUtil(int pageSize, int totalCount) {
  super();
  this.pageSize = pageSize;
  setTotalCount(totalCount);
 }
 
 /**
  * 根据页码获取查询语句的limit开始
  * @param pageNo
  * @return
  */
 public int getLimitStart(int pageNo) {
  return (pageNo-1)*this.pageSize;
 }
}

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP