在xml文件中,select * 运行后控制台显示select count(0)

        使用spring-boot搭建的小项目,写crud,做分页显示的功能时,尝试使用了 手动写sql语句,mybatis-plus的IPage方法,PageHelper插件 三种方法。

        因为是先用PageHelper插件写的,所以优先导入了PageHelper依赖,之后再使用sql语句在xml文件写"select * from table_name where 条件 limit pageNum,pageSize"分页。但在运行后,swagger报错500,查看控制台,显示的是select count(0) from table_name where 条件 limit pageNum,pageSize。将select * 换为select city(city是表中的一个属性),再次运行显示的仍然是select count(0)。

         猜测是pageNum和pageSize的问题。于是先去掉pageNum和pageSize,运行成功了。尝试只将pageNum添加回来,同样运行成功。猜测是pageNum和pageSize命中了PageHelper的过滤器。所以更换了pageNum和pageSize的变量名,运行成功。

        后续查询了pageHelper的文档,确实当pageNum和pageSize同时存在的时候,会触发分页操作。

        文档链接:如何使用分页插件 (pagehelper.github.io)

         为了避免由于重名导致的此问题,可以在yml文件中配置,将pageNum和pageSize改为pageNumKey和pageSizeKey(下图最后一行)。或者将他们名字换为不同的(比如a和b)也可以。

pagehelper:
  helper-dialect: mysql
  reasonable: true
  support-methods-arguments: true
  params: pageNum=pageNumKey;pageSize=pageSizeKey;

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值