如果分页语句没有被消耗掉,它一直保留着,直到被织入到下一次查询语句,如果 被织入的查询语句自己有LIMIT限制,那么两个LIMIT就导致语法错误了。

 

PageHelper.startPage(pageNo, pageSize);
if (flag) {
    aaaMapper.listAll();
}
aaaMapper.getFirstOne();

 

<select id="listAll" resultType="UserPO">
    select name from user
</select>

<select id="getFirstOne" resultType="String">
    select name from user limit 1
</select>

 

由于使用的ThreadLocal,同一进程的请求,分页语句甚至会织入到下次请求的某个查询语句中。

所以最好让startPage()能与目前查询语句紧贴再一起,确保LIMIT内容能被正确的使用掉。

相关文章:

  • 2021-11-22
  • 2022-12-23
  • 2022-12-23
  • 2021-11-01
  • 2021-12-04
  • 2021-08-15
  • 2021-10-03
  • 2022-01-13
猜你喜欢
  • 2022-01-03
  • 2021-11-08
  • 2022-12-23
  • 2021-08-01
  • 2022-12-23
  • 2021-12-11
  • 2022-12-23
相关资源
相似解决方案