📄 pagelist.java
字号:
package com.wlpava.utils;
import java.util.*;
/**
* 实现通过调用IQuery实现分页处理
* @author 蔡世友
*/
public class PageList implements IPageList {
private int rowCount;// 记录数
private int pages;// 总页数
private int currentPage;// 实际页数
private List result;
private IQuery query;
public PageList() {
}
public PageList(IQuery q) {
this.query = q;
}
public void setQuery(IQuery q) {
query = q;
}
public List getResult() {
return result;
}
public void doList(int pageSize, int pageNo, String totalSQL, String queryHQL) {
List rs = null;
int total = query.getRows(totalSQL);
if (total > 0) {
this.rowCount = total;
this.pages = (this.rowCount + pageSize - 1) / pageSize; // 记算总页数
int intPageNo = (pageNo > this.pages ? this.pages : pageNo);
if (intPageNo < 1)
intPageNo = 1;
this.currentPage = intPageNo;
if (pageSize > 0) {
query.setFirstResult((intPageNo - 1) * pageSize);
query.setMaxResults(pageSize);
}
rs = query.getResult(queryHQL);
}
result = rs;
}
public void doList(int pageSize, int pageNo, String totalSQL, String queryHQL, Collection paraValues) {
List rs = null;
query.setParaValues(paraValues);
int total = query.getRows(totalSQL);
if (total > 0) {
this.rowCount = total;
this.pages = (this.rowCount + pageSize - 1) / pageSize; // 记算总页数
int intPageNo = (pageNo > this.pages ? this.pages : pageNo);
if (intPageNo < 1)
intPageNo = 1;
this.currentPage = intPageNo;
if (pageSize > 0) {
query.setFirstResult((intPageNo - 1) * pageSize);
query.setMaxResults(pageSize);
}
rs = query.getResult(queryHQL);
}
result = rs;
}
public int getPages() {
return pages;
}
public int getRowCount() {
return rowCount;
}
public int getCurrentPage() {
return currentPage;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -