📄 pageinfoimpl.java
字号:
package common.songbing.page;
import java.util.List;
public class PageInfoImpl implements PageInfo {
private List pageData; //分页内容列表
private int pageCount; //分页总数
private int pageSize; //当前页的记录数
private long totalRecords; //总记录数
private int start; //当前页的起始索引(记录在结果集中的索引位置)
private int currentNo; //当前页码
public PageInfoImpl(List pageData, long totalRecords, int pageSize, int pageNo) {
this.pageData = pageData;
this.totalRecords = totalRecords;
this.pageSize = pageSize;
this.currentNo = pageNo;
//计算其它值
pageCount = (int)((totalRecords + pageSize - 1) / pageSize);
if(totalRecords <= 0) {
pageCount = 0;
}
if(currentNo == pageCount) { //如果当前页是最后一页,则当前页的记录数有可能少于每页显示的最大记录数
this.pageSize = (int)(totalRecords - ((pageCount - 1) * pageSize));
}
start = (pageNo - 1) * pageSize;
}
public int getCurrentPageNo() {
return currentNo;
}
public long getEndIndex() {
return start + pageSize - 1;
}
public int getPageCount() {
return pageCount;
}
public List getPageData() {
return pageData;
}
public int getPageSize() {
return pageSize;
}
public long getTotalRecords() {
return totalRecords;
}
public long getStartIndex() {
return start;
}
public int getStartOfNextPage() {
int pageNo = currentNo + 1;
if(pageNo > pageCount) {
pageNo = pageCount;
}
return this.getStartOfPage(pageNo);
}
public int getStartOfPage(int pageNo) {
int startIndex = (pageNo - 1) * pageSize + 1;
if(startIndex < 1) {
startIndex = 1;
}
return startIndex;
}
public int getStartOfPreviousPage() {
int pageNo = currentNo - 1;
if(pageNo < 1) {
pageNo = 1;
}
return this.getStartOfPage(pageNo);
}
public boolean isNextPageEnable() {
return currentNo < pageCount;
}
public boolean isPreviousPageEnable() {
return currentNo > 1;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -