springboot+pageHelper
查询不带分页列表,但是数据返回的时候,比如应该返回50条数据,但是页面上调用,有时候会只返回10条数据,经过排查,发现了问题,特此总结下:
PageHelper方法使用静态参数ThreadLocal,分页参数和线程是绑定的。内部流程是ThreadLocal中设置了分页参数(pageIndex,pageSize),之后在查询时,会获取当线程中的分页参数,执行查询的时候通过拦截器在sql语句中添加分页参数,之后实现分页查询,查询结束后需要在 finally 语句中清除ThreadLocal中的查询参数,如果先调用分页接口,此时调用不分页接口,如果没有清楚分页参数的话,还是会分页。
解决办法,在调用不分页接口前,手动清楚分页参数
import com.github.pagehelper.PageHelper;
public List selectList(SelectDto s) {
PageHelper.clearPage();
return demoMapper.selectList(s);
}