mybatis if 非空判断数字0踩过的坑
1、下面这种写法,当status=0的时候,if 判断条件进不去
<if test="map.status != null and map.status != ''">
AND bc.status = #{map.status}
</if>
2、解决办法,去掉map.status != ''的判断
<if test="map.status != null ">
AND bc.status = #{map.status}
</if>
总结:
查阅资料说法如下:"“最终会被转成double类型0.0,当status= 0时候会被转成double类型0.0,两者比较后就是true,这就是mybati中if test 0!=”"判定为false的原因。