java 分页工具类

本文介绍了一个用于Java项目的通用分页组件实现,该组件能够帮助开发者快速实现数据分页功能,包括计算总页数、判断是否存在上下页等,并提供了详细的类属性及构造方法说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

不说了直接码代码
import java.util.List;


/**
 * 分页
 * @author mastercheng
 *
 * @param <T>
 */
public class Page<T> {

/**
* 总条目数
*/
private Integer totalRecords;

/**
* 总页数
*/
private Integer totalPages;

/**
* 每页显示多少
*/
private Integer pageSize;

/**
* 当前页
*/
private Integer currentPage;

/**
* 当前页的数据
*/
private List<T> records;

/**
* 是否有下一页
*/
private Boolean hasNext;

/**
* 是否有上一页
*/
private Boolean hasPrev;


public Integer getTotalRecords() {
return totalRecords;
}


public void setTotalRecords(Integer totalRecords) {
this.totalRecords = totalRecords;
}


public Integer getTotalPages() {
return totalPages;
}


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


public Integer getPageSize() {
return pageSize;
}


public void setPageSize(Integer pageSize) {
this.pageSize = pageSize;
}


public Integer getCurrentPage() {
return currentPage;
}


public void setCurrentPage(Integer currentPage) {
this.currentPage = currentPage;
}


public List<T> getRecords() {
return records;
}


public void setRecords(List<T> records) {
this.records = records;
}


public Boolean getHasNext() {
return hasNext;
}


public void setHasNext(Boolean hasNext) {
this.hasNext = hasNext;
}


public Boolean getHasPrev() {
return hasPrev;
}


public void setHasPrev(Boolean hasPrev) {
this.hasPrev = hasPrev;
}


public Page(Integer totalRecords, Integer pageSize, Integer currentPage, List<T> records) {
super();
this.totalRecords = totalRecords;
this.pageSize = pageSize;
this.currentPage = currentPage;
this.records = records;
this.totalPages = totalRecords%pageSize>0?totalRecords/pageSize+1:totalRecords/pageSize;
if (this.totalPages==currentPage) {
this.hasNext = false;
if (totalPages == 1 || totalPages == 0) {
this.hasPrev = false;
}else{
this.hasPrev = true;
}
}else if (currentPage < totalPages) {
this.hasNext = true;
if (currentPage == 1) {
this.hasPrev = false;
}else{
this.hasPrev = true;
}
}else if (totalPages == 1) {
this.hasNext = false;
this.hasPrev = false;
}
}


public Page() {
super();
}



}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值