(转)mybatis dao的xml文件int类型值为0,条件判断不满足

症状:在使用mybatis时,判断int类型的值为0

  前端和后端都可以获取到值,但是在数据库中就是不能更新

代码如图:

        update t_mi
        <set>
            <if test="miStone != null and miStone != ''">miStone = #{miStone}</if>
        </set>
        where miId = #{miId}    

一直都是用这种方式判断的,但是昨天出现了问题,当miStone数值为0 是,条件一直不满足,使用其他条件就可以插入进去,所以数据库语句没有错误

之后经过一番查找,在其他人的博客中找到了答案:

 网上说:int类型的数据在设置为0时,mybatis自动转换为null之后也进行了测试,但是依然判断不满足

最终解决方法:

        update t_mi
        <set>
            <if test="miStone != null">miStone = #{miStone}</if>
        </set>
        where miId = #{miId}    

 mybatis进行int判断是只需要判断  int != null 就可以了

网上的也不能全信,也是会出现问题,可能问题不一样。

转载至:

https://blog.csdn.net/gui66497/article/details/50166433

猜你喜欢

转载自www.cnblogs.com/li-yi-learn/p/9063021.html
今日推荐