mybatis 报错显示sql中有两个limit
使用mybatis进行分页查询时,打印的查询sql中带有两个limit。
经过审查:原因是由于自己在sql语句中写了limit,
然而在springboot中配置了pageHelper,它的作用是在sql中自动加上limit,所以就出现了两个limit;
把pom文件的配置删掉调就决绝问题喽。
mybatis 分页中的小坑(limit 0.0 ,10)
其中某个dao对应的mapper.xml配置如下:
很正常分页对不对?
然后系统一直报如下异常:
很郁闷,哪里来的0.0,不是应该0吗??
解决方案
limit m,n = limit ${(page-1)*pagesize},${pagesize}
这里需要特别注意的是,传入参数时,page ,pagesize需为int或者integer类型!
如果为其他类型,比如string,直接获取pagesize值将不会有错,但是(page-1)*pagesize是需要进行运算的!
先进行类型转换,然后进行计算—->这也就是为什么是0.0!!
以上为个人经验,希望能给大家一个参考,也希望大家多多支持IT俱乐部。