package cn.itcast.oa.domain;
import java.io.Serializable;
import java.util.List;
/**
* 分页功能中的一页的信息(封装对象)
*
* @author
* @version V1.0
*/
@SuppressWarnings({ "serial", "rawtypes" })
public class PageBean implements Serializable {
// 指定的或是页面参数
/** 当前页 */
private int currentPage;// 当前页
/** 每页显示多少条数据 */
private int pageSize;// 每页显示多少条数据
// 查询数据库
/** 总记录数 */
private int recordCount;// 总记录数
/** 本页的数据列表 */
private List recordList;// 本页的数据列表
// 计算
/** 总页数 */
private int pageCount;// 总页数
/** 页码列表的开始索引(包含) */
private int beginPageIndex;// 页码列表的开始索引(包含)
/** 页码列表的结束索引(包含) */
private int endPageIndex;// 页码列表的结束索引(包含)
/**
* 只接受前4个必要的属性,会自动计算出其它3个属性的值
*
* @param currentPage
* 当前页
* @param pageSize
* 每页显示多少条数据
* @param recordCount
* 总记录数
* @param recordList
* 本页的数据列表
*/
public PageBean(int currentPage, int pageSize, int recordCount, List recordList) {
this.currentPage = currentPage;
this.pageSize = pageSize;
this.recordCount = recordCount;
this.recordList = recordList;
// 计算总页码
this.pageCount = (recordCount + pageSize - 1) / pageSize;
// 计算 beginPageIndex 和 endPageIndex 结束索引
// >> 总页数不多于10页,则全部显示
if (pageCount <= 10) {
beginPageIndex = 1;
endPageIndex = pageCount;
}
// >> 总页数多于10页,则显示当前页附近的共10个页
else {
// >> 当前页附近的共10个页码(前4个 + 当前页 + 后5个)
beginPageIndex = currentPage - 4;
endPageIndex = currentPage + 5;
// >> 当前面的页码不足4个时,则显示前10个页码
if (beginPageIndex < 1) {
beginPageIndex = 1;
endPageIndex = 10;
}
// >> 当后面的页码不足5个时,则显示后10个页码
if (endPageIndex > pageCount) {
endPageIndex = pageCount;
beginPageIndex = pageCount - 10 + 1;
}
}
}
public List getRecordList() {
return recordList;
}
public void setRecordList(List recordList) {
this.recordList = recordList;
}
public int getCurrentPage() {
return currentPage;
}
public void setCurrentPage(int currentPage) {
this.currentPage = 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 = pageSize;
}
public int getRecordCount() {
return recordCount;
}
public void setRecordCount(int recordCount) {
this.recordCount = recordCount;
}
public int getBeginPageIndex() {
return beginPageIndex;
}
public void setBeginPageIndex(int beginPageIndex) {
this.beginPageIndex = beginPageIndex;
}
public int getEndPageIndex() {
return endPageIndex;
}
public void setEndPageIndex(int endPageIndex) {
this.endPageIndex = endPageIndex;
}
}
分页功能中的一页的信息(封装对象)
原创
©著作权归作者所有:来自51CTO博客作者wx62dfdc6aea345的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
java将map中的值放到对象中
java将map中的值放到对象中
Java if语句 java -
保存分页中某一页中的数据
这是我可以选到哪页,就把哪页的数据保存下来的功能,放在这防止日后忘记,谁看到了,能用到就拿去用吧,不过别忘了顶我一下
SQL Excel sql Shell -
servlet+mysql分页(上一页,下一页)
servlet+mysql分页(上一页,下一页)
java mysql HTML html -
nodejs+express+mysql(后台实例项目练习8—实现分页功能 上一页 下一页功能)
..
express mysql css html -
DataGrid 分页 首页 上一页 下一页 跳转页
页面代码: 无标题页 ...
sql html c# 数据绑定 xml