pageHelper源码初探(一)(如何使total设置成总记录数 pageHelper分页 总记录数等于当前页面记录数,total值错误)
问题
用pageHelper进行分页,发现页面展示的总记录数不对,最多只会显示一页数据
这是我的代码
public TableDataInfo list(SysFileInfo fileInfo)
{
startPage();
List<SysFileInfo> list = fileInfoService.selectSysFileInfoList(fileInfo);
// 这里将对象进行包装,扩展其他数据
List<SysFileInfoVo> voList = fileInfoService.selectSysFileInfoVoList(list);
return getDataTable(voList);
}
protected void startPage()
{
PageDomain pageDomain = TableSupport.buildPageRequest();
Integer pageNum = pageDomain.getPageNum();
Integer pageSize = pageDomain.getPageSize();
if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize))
{
String orderBy = SqlUtil.escapeOrderBySql(pageDomain.getOrderBy());
PageHelper.startPage(pageNum, pageSize, orderBy);
}
}
菜鸟初探pageHelper,大神勿喷,不感兴趣的可以滑到最后查看解决方案
1,先去查找数据库
数据是自己存的,我知道记录条数一定大于10
2,查看日志记录的sql语句
数据库里总记录数是正常的,看不出问题,转去查看日志输出的sql记录
15:46:10.775 [http-nio-80-exec-22] DEBUG c.r.s.m.S.selectSysFileInfoList_COUNT - [debug,159] - ==> Preparing: SELECT count(0) FROM sys_file_info a WHERE del_flag = '0' AND a.file_type = ?
15:46:10.776 [http-nio-80-exec-22] DEBUG c.r.s.