PageHelper单表简单查询没有问题,复杂查询总数和页数不正确
- 自定义PageInfo:
package com.yiding.saas.ydsaas.common.core;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageInfo;
/**
* 重写pageInfo
* 解决pageInfo total pages错误问题
*/
public class CustPageInfo {
private PageInfo pageInfo;
private Page page;
public CustPageInfo(com.github.pagehelper.PageInfo pageInfo, Page page) {
pageInfo.setPages(page.getPages());
pageInfo.setTotal(page.getTotal());
this.pageInfo = pageInfo;
this.page = page;
}
public PageInfo getPageInfo() {
return pageInfo;
}
}
- 使用,一定放在要分页的前一行
Page<Object> page = PageHelper.startPage(ydDeviceDto.getPageNum(), ydDeviceDto.getPageSize());
PageInfo<JSONObject> pageInfo = new PageInfo<>(jsonObjects);
pageInfo=new CustPageInfo(pageInfo,page).getPageInfo();