mysql创建类型int,MyBatis传0的时候不修改 ,mysql函数生成唯一字段的主键id时候会重复

在使用MyBatis时,遇到Integer类型字段传0导致不更新的问题,原因是0被解析为空字符串。解决方法是去除XML中的空字符串判断。另外,MySQL中使用函数生成唯一主键时出现重复,可以使用MD5(UUID())来确保生成的ID唯一。
摘要由CSDN通过智能技术生成

myBatis对于Integer类型传0问题

最近碰到一个特别奇葩的问题就是在MyBatis使用的时候,修改为Integer类型的字段传0步修改的问题,记录一下,以后别忘记了

原因就是:我们传0的时候默认的给我们解析成 “” (空字符串)了。在我们xml中判断的时候直接条件拦截

 <if test="num!=null and ''!=num">
            AND s.num= #{
   num}
        </if>

解决办法,就是把判断空字符串去掉就可以了

 <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值