症状:在使用mybatis时,判断int类型的值为0
前端和后端都可以获取到值,但是在数据库中就是不能更新
<if test="isNbMeter!=null and isNbMeter!=''">isNbMeter=#{isNbMeter},</if>
Mybatis Integer类型,值为0被认为是空字符串,所以如果你的值为0,则此时判断空字符串,
mybatis将i==0的值也认定为空字符串。只需要将判空字符串条件去掉即可:
<if test="isNbMeter!=null">isNbMeter=#{isNbMeter},</if>
或者判断不为-1:
<if test="isNbMeter!=null and isNbMeter != -1">isNbMeter=#{isNbMeter},</if>
这种判空情况很多,boolean、date类型,都不能使用!=''