page类

本文介绍了一个用于Java项目的通用分页组件实现,该组件能够帮助开发者轻松地在应用程序中实现数据分页显示功能。文章详细解释了分页类Page<T>的属性与方法,包括如何计算总页数、获取当前页及相邻页码等实用功能。
摘要由CSDN通过智能技术生成
package com.wfg.core.page;

import java.util.List;

public class Page<T> {

	// 总记录数
	private int total;
	// 当前页的记录集
	private List<T> datas;
	// 每页多少条数据
	private int pageSize = 20;
	// 第几页
	private int pageNo = 1;

	public Page() {

	}

	public Page(int pageSize) {
		this.pageSize = pageSize;
	}

	public Page(int pageNo, int pageSize) {
		this.pageNo = pageNo;
		this.pageSize = pageSize;
	}

	// 求总页数
	public int getTotalPages() {
		return (this.total + pageSize - 1) / pageSize;
	}

	// 首页
	public int getTopPage() {
		return 1;
	}

	// 末页
	public int getBottomPage() {
		return this.getTotalPages() == 0 ? 1 : this.getTotalPages();
	}

	// 上一页
	public int getUpPage() {
		if (this.pageNo <= 1) {
			return 1;
		}
		return this.pageNo - 1;
	}

	// 下一页
	public int getNextPage() {
		if (this.pageNo >= this.getTotalPages()) {
			return (this.getTotalPages() == 0 ? 1 : this.getTotalPages());
		}
		return pageNo + 1;
	}

	public int getPageSize() {
		return pageSize;
	}

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

	public int getPageNo() {
		return pageNo;
	}

	public void setPageNo(int pageNo) {
		this.pageNo = pageNo;
	}

	@SuppressWarnings("unchecked")
	public List getDatas() {
		return datas;
	}

	@SuppressWarnings("unchecked")
	public void setDatas(List datas) {
		this.datas = datas;
	}

	public int getTotal() {
		return total;
	}

	public void setTotal(int total) {
		this.total = total;
	}

	@Override
	public String toString() {

		return "[pageNo: " + this.pageNo + "] [pageSize: " + this.pageSize
				+ "] [total:" + this.total + "] ";
	}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王小工

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值