PageBean分页工具类,适用于mysql

本文介绍了一个分页工具类PageBean的实现细节,包括其属性如每页记录数、当前页数等,以及如何通过设置总记录数来计算总页数和当前页的数据起始位置。

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

//这是一个分页工具类,只要setTotalCount就能根据页数获取相应的数据

package com.baxcall.visitor.bean;

import org.apache.ibatis.type.Alias;

@Alias("pageBean")
public class PageBean {
    private static final int DEFAULT_PAGE_SIZE = 6;   

    private int pageSize = DEFAULT_PAGE_SIZE;  // 每页的记录数   

    private int start = 0;  // 当前页第一条数据在List中的位置,从0开始   

    private int page = 1;  //当前页   

    private int totalPage =0;  //总计有多少页   

    private int totalCount =0;  // 总记录数   

//  构造函数   
    public PageBean() {   
    }   

    public PageBean(int page) {   
        this.page=page;   
    }   

/   

    public void setPage(int page) {   
        if(page>0) {   
            start=(page-1)*pageSize;   
            this.page = page;   
        }   
    }   

    public int getPage() {   
        return page;   
    }   

    public int getPageSize() {   
        return pageSize;   
    }   

    public PageBean setPageSize(int pageSize) {   
        this.pageSize = pageSize;   
        return this;   
    }   
    /**  
     * @return the start  
     */  
    public int getStart() {   
        return start;   
    }   

    //  此位置根据计算得到   
    protected void setStart() {   
    }   

/**  
     * @return the totalCount  
     */  
    public int getTotalCount() {   
        return totalCount;   
    }   

    public void setTotalCount(int totalCount) {   
        this.totalCount=totalCount;   
        totalPage = (int) Math.ceil((totalCount + pageSize - 1) / pageSize);   
        start=(page-1)*pageSize;   
    }   

    //  总页面数根据总数计算得到   
    protected void setTotalPage() {   

    }   

    public int getTotalPage() {   
        return totalPage;   
    }   


    //获取上一页页数   
    public int getLastPage() {   
        if(hasLastPage()) {   
            return page-1;   
        }   
        return page;   
    }   


    public int getNextPage() {   
        if(hasNextPage()) {   
            return page+1;   
        }   
        return page;   
    }   
    /**  
     * 该页是否有下一页.  
     */  
    public boolean hasNextPage() {   
        return page < totalPage;   
    }   

    /**  
     * 该页是否有上一页.  
     */  
    public boolean hasLastPage() {   
        return page > 1;   
    }   
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值