MyBatis参数为Integer型并赋值为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.csdn.net/qing_gee/article/details/50518795
http://blog.csdn.net/qq_25667339/article/details/44156049/(以上内容转自此篇文章)