搜索分页

本文介绍了一个简单的分页组件的Java实现,该组件能够根据当前页码和记录总数自动计算出分页导航所需的参数,如总页数、当前页显示的记录范围等。文章通过具体的代码展示了如何进行分页逻辑的计算。

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

package gov.hn.hrss.web.page;

public class Page {
private int pagesize = 10, pagecount, liststep = 20, currentpage = 1,
recordcount, listbegin, listend, recordbegin, recordend = 0;

public Page(int current, int recordcount) {
super();
this.currentpage = current;
this.recordcount = recordcount;
pagecount = (int) Math.ceil((double) recordcount / pagesize);// 求总页数,ceil(num)取整不小于num
if (pagecount < current) {
currentpage = pagecount;// 如果分页变量大总页数,则将分页变量设计为总页数
}
if (current < 1) {
currentpage = 1;// 如果分页变量小于1,则将分页变量设为1
}
listbegin = (current - (int) Math.ceil((double) liststep / 2));
if (listbegin < 1) {
listbegin = 1;
}
listend = current + liststep / 2;// 分页信息显示到第几页
if (listend > pagecount) {
listend = pagecount + 1;
}
recordbegin = (current - 1) * pagesize;
recordend = recordbegin + pagesize;
if (currentpage == pagecount) {
recordend = (int) (recordbegin + pagesize
* (recordcount % pagesize) * 0.1);
}

}

public int getCurrentpage() {

return currentpage;
}

public void setCurrentpage(int currentpage) {

this.currentpage = currentpage;
}

public int getListbegin() {

return listbegin;
}

public void setListbegin(int listbegin) {

this.listbegin = listbegin;
}

public int getListend() {

return listend;
}

public void setListend(int listend) {

this.listend = listend;
}

public int getListstep() {

return liststep;
}

public void setListstep(int liststep) {

this.liststep = liststep;
}

public int getPagesize() {

return pagesize;
}

public void setPagesize(int pagesize) {

this.pagesize = pagesize;
}

public int getRecordbegin() {

return recordbegin;
}

public void setRecordbegin(int recordbegin) {

this.recordbegin = recordbegin;
}

public int getRecordcount() {

return recordcount;
}

public void setRecordcount(int recordcount) {

this.recordcount = recordcount;
}

public int getRecordend() {

return recordend;
}

public void setRecordend(int recordend) {

this.recordend = recordend;
}

public int getPagecount() {

return pagecount;
}

public void setPagecount(int pagecount) {

this.pagecount = pagecount;
}

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值