📄 pagequery.java
字号:
package com.support.util.page;
import org.hibernate.Query;
import com.support.hibernate.*;
public class PageQuery {
private Query query;
private Query countQuery;
private int pageSize;
public PageQuery(Query query,Query countQuery,int pageSize) {
this.query = query;
this.countQuery = countQuery;
this.pageSize = pageSize;
}
public PageListData pageQuery(int pageNum) {
PageListData pageListData = new PageListData();
int totalNum = Integer.parseInt(countQuery.list().get(0).toString());
int totalPage = 0;
int rowLow = 0;
int rowUp = 0;
pageListData.setTotalRecord(totalNum);//设置总记录数
totalPage = totalNum / this.pageSize;
if (totalNum % this.pageSize != 0) {
totalPage += 1;
}
if (pageNum < 1 || pageNum > totalPage) pageNum = 1;
pageListData.setCurrentPage(pageNum);
pageListData.setTotalPage(totalPage);//设置总页面数
rowLow = (pageNum - 1) * this.pageSize;
pageListData.setRowLow(rowLow);//设置当前页起始记录序号
rowUp = rowLow + this.pageSize;
query.setMaxResults(this.pageSize);
query.setFirstResult(rowLow);
pageListData.setRowUp(rowUp);//设置当前页终止记录序号
pageListData.setDataList(query.list());
return pageListData;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -