分享一个分页类。

本文介绍了一个简单的分页工具类的设计与实现,该类能够帮助开发者快速实现数据分页功能。文章详细展示了类中各属性及方法的作用,包括总记录数、页面条数、页面总数等关键参数的设置与获取。

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

public class Paging implements Serializable {

    private static final long serialVersionUID = 12312412312312312L;

    private int records;//总记录数

    private int pageSize = 10;//页面条数

    private int pageCount;//页面总数

    private int currentPage = 1;//当前页面

    public Paging() {

    }

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

    public int getCurrentPage() {
        return currentPage;
    }

    public void setCurrentPage(int currentPage) {
        this.currentPage = (currentPage < 1 ? 1 : currentPage);
    }

    public int getPageCount() {
        return pageCount;
    }

    public void setPageCount(int pageCount) {
        this.pageCount = pageCount;
    }

    public int getPageSize() {
        return pageSize;
    }

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

    public int getRecords() {
        return records;
    }

    public void setRecords(int records) {
        if (records == 0) {
            //pageCount = 1;
            return;
        }

        this.records = records;
        if (pageSize > 0) {

            pageCount = ((int) Math.ceil((records - 1) / pageSize) + 1);

            if (currentPage < 1) {
                currentPage = 1;
            }
        }
    }

    public int getFirstPage() {
        return 1;
    }

    public int getPrePage() {
        return currentPage - 1 >= 1 ? currentPage - 1 : 1;
    }

    public int getNextPage() {
        return currentPage + 1 > pageCount ? pageCount : currentPage + 1;
    }

    public boolean isFirst() {
        return currentPage == 1;
    }

    public boolean isLast() {
        return currentPage == pageCount;
    }

    public int getStartRow() {
        return (currentPage - 1) * pageSize;
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值