菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻
498
0

开发中遇到的问题---【当类型设置为Integer时,传入的值为0,会将其转化为空字符串,从而造成查询数据异常】

原创
05/13 14:22
阅读数 79747

问题:今天在写一个普通的查询,条件查询状态为0时,查询总是异常,debug获取的参数都没问题,但查询后的结果是查询所有的数据

 sql日志:select * from mobile_info WHERE LIMIT ? 

原因:当数据类型设置为Integer,传入的值为0时,在mybatis会将其转化为空字符串,从而无法进入if标签中进行查询。在数据库可视化工具中,当输入的batchStatus=0或者空字符串查询的结果是相同的。 当去掉mapper中的sql语句

and ispType != ''

时,就可以查询了(即使在初始化查询的时候,也不受影响,因为初始加载页面各个条件默认为null)

 

 

 

 

 

发表评论

0/200
498 点赞
0 评论
收藏
为你推荐 换一批