数据量过大的情况下 PageHelper + mybatis 导致查询速度慢
重写 PageHelper 对应列表的查询count方法即可
如mapper中原列表查询方法
List<Type> findByPage(@Param("beginTime") String beginTime, @Param("endTime") String endTime);
将这个方法复制一下方法名 加上 _COUNT , PageHelper 就会自动加载定义的这个方法而不是执行PageHelper 生成的
Long findByPage_COUNT(@Param("beginTime") String beginTime, @Param("endTime") String endTime);
//这个count sql 可以适当优化一下 去掉不需要的联查啥的,返回类型必须是Long
<select id="findByPage_COUNT" resultType="java.lang.Long">
SELECT count(0) FROM table
<where>
列表的条件直接放进来
</where>
</select>

浙公网安备 33010602011771号