MyBatis参数为Integer型并赋值为0时判断失误的问题解决

本文探讨了MyBatis中if标签判断参数不为空时,0值Integer被视为null的问题及解决方案。介绍了如何正确配置if标签以包含0值的情况。

mybatis.xml中有if判断条件判断参数不为空时,赋值为0的Integer参数被MyBatis判断为空,因此不执行<if test="param != null and param != ''"></if>的SQL。

所以在做项目时一定要注意,用到MyBatis时,避免用0来做值。

解决方法:

<if test="status !=null and (status!='' or status == 0)">
AND t1.`STATUS` = #{status}
</if>
加上or后面的一段就可以了。

或者直接把status!=''去掉。

 

参考:

http://blog.youkuaiyun.com/qing_gee/article/details/50518795

http://blog.youkuaiyun.com/qq_25667339/article/details/44156049/(以上内容转自此篇文章)

==>如有问题,请联系我:easonjim#163.com,或者下方发表评论。<==
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值