SpringBoot + Mybatis使用PageHelper total错误

在使用Mybatis的PageHelper 时碰到一个问题:我的total只要大于pageSize就等于pageSize

查看了打印出来的sql
SELECT count(0) FROM XXX
这条是查询total的
SELECT count(0) FROM XXX limit pageSize
这条是分页查询数据的
我觉得没什么问题。

后来发现我的Service方法查询List的时候因为需要填充些数据,所以在Service方法里面还有别的一些sql语句
所以会导致我的total不准

解决方法:
将分页的PageHelper.startPage(pageNum, pageSize);和放入到了service中这条sql的上面然后封装page的代码放在了list下面,对list里面的数据进行封装放在了下面,因为list的指针没变所以对list里面对象进行属性填充就不需要重新将list加入page
在这里插入图片描述

现在我有一个新的方法,算是取巧吧可以完成需求
就是实体的list也封装进一个page ,把这个page的total(正确的)赋值给封装类的那个pege的total(错误的)

你可能感兴趣的:(java,Mybatis)