分頁實體
import java.util.ArrayList;
import java.util.List;
/**
* 分頁工具
*/
public class PageUtil {
/**
* 每頁大小
*/
private int pageSize;
/**
* 當前頁爲第幾頁
*/
private int number;
/**
* 總共有多少頁
*/
private int totalPages;
/**
* 總共有多少條數據
*/
private int totalElements;
/**
* 數據
*/
private List content = new ArrayList();
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public int getNumber() {
return number;
}
public void setNumber(int number) {
this.number = number;
}
public int getTotalPages() {
return totalPages;
}
public void setTotalPages(int totalPages) {
this.totalPages = totalPages;
}
public int getTotalElements() {
return totalElements;
}
public void setTotalElements(int totalElements) {
this.totalPages = totalElements % pageSize == 0 ? totalElements/pageSize : (totalElements/pageSize) + 1;
this.totalElements = totalElements;
}
public List getContent() {
return content;
}
public void setContent(List content) {
this.content = content;
}
}
controller
/**
* 分頁
* @param pageNum 頁碼
* @param pageSize 頁面大小
* @return PageUtil 裏面有共有多少條數 和列表
*/
@RequestMapping("getAllCommodity")
public PageUtil getAllCommodity(Integer pageNum, Integer pageSize){
return allService.getAll(pageNum,pageSize);
}
Service
/**
* 採購商品維護列表
* @param pageNum 頁碼
* @param pageSize 頁面大小
* @return
*/
@Override
public PageUtil getAllCommodity(Integer pageNum, Integer pageSize){
PageUtil pageUtil=new PageUtil();
//查詢數據總條數
int totalNumbr=allDao.getTotalNumber(gongyingshang,status,guanjianzi);
//頁面大小
pageUtil.setPageSize(pageSize);
//信息總條數
pageUtil.setTotalElements(totalNumbr);
//當前爲第幾頁
pageUtil.setNumber(pageNum);
//頁面內容
pageUtil.setContent(allDao.getCommodity((pageNum-1)*pageSize,pageSize));
return pageUtil;
}
dao
查詢總條數
/**
* 獲取總條數
* @return
*/
@Override
public int getTotalNumber(Integer gongyingshang, Integer status, Integer guanjianzi) {
StringBuffer stringBuffer=new StringBuffer("select count(1) from 表名 where 1=1 ");
Object result=entityManager.createNativeQuery(stringBuffer.toString()).getSingleResult();
return Integer.parseInt(result.toString());
}
查詢頁面內容
/**
* 查詢頁面內容
* @param pageNum
* @param pageSize
* @return
*/
@Override
public List<Commodity> getCommodity( Integer pageNum, Integer pageSize) {
StringBuffer stringBuffer=new StringBuffer("select 字段名稱 from 表名 where 1=1 ");
//XXXX對應的實體類名
List<XXX> result=null;
stringBuffer.append(" limit :page,:size");
result=entityManager.createNativeQuery(stringBuffer.toString()).setParameter("page",pageNum).setParameter("size",pageSize).getResultList();
return result;
}