分页工具类

8 篇文章 0 订阅
5 篇文章 0 订阅

自己写的一个分页工具类,有待改善,可根据实际需要进行修改:

package com.hsm.utils;


//分页类  辅助类 不用实现序列化接口  Serializable
public class Page {
long totalRowsAmount; // 总行数,hibernate语句返回的是Long型的数据
int pageSize = 4; // 每页行数、即显示的数据个数
int currentPage = 1; // 当前页码
int totalPages; // 总页数
int pageStartRow;// 显示页的开始显示数据行、返回的结果集中的
int pageEndRow;// 显示页的末尾显示数据行、返回的结果集中的,基本用不到


/*
* @return
*/
public long getTotalRowsAmount() {
return totalRowsAmount;
}


/*
* @param t 设置总行数
*/
public void setTotalRowsAmount(long n) {
this.totalRowsAmount = n;
}


public int getPageSize() {
return pageSize;
}


/*
* @param pageSize 设置每页显示的数据个数、即行数
*/
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}


public int getCurrentPage() {
return currentPage;
}


/*
* @param currentPage 设置当前页码数
*/
public void setCurrentPage(int currentPage) {
this.currentPage = currentPage;
}


/*
* 总页数的获取
*/
public int getTotalPages() {
return (int) ((this.getTotalRowsAmount() - 1) / this.getPageSize() + 1);
}


public void setTotalPages(int totalPages) {
this.totalPages = totalPages;
}


public int getPageStartRow() {
if (getCurrentPage() * getPageSize() < getTotalRowsAmount()) {
pageStartRow = getPageEndRow() - getPageSize() + 1;
} else {
pageStartRow = (int) (getPageSize() * (getTotalPages() - 1) + 1);
}
return pageStartRow;
}


/*
* @param pageStartRow 设置当前页显示的开始数据行数
*/
public void setPageStartRow(int pageStartRow) {
this.pageStartRow = pageStartRow;
}


public int getPageEndRow() {
if (getCurrentPage() * getPageSize() < getTotalRowsAmount()) {
pageEndRow = getCurrentPage() * getPageSize();
} else {
pageEndRow = (int) getTotalRowsAmount();
}
return pageEndRow;
}


/*
* @param pageStartRow 设置当前页显示的末尾数据行数
*/
public void setPageEndRow(int pageEndRow) {
this.pageEndRow = pageEndRow;
}


}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值