解决mybatis-plus中,当属性为空的时候,update方法、updateById方法无法set null,直接忽略了

问题描述

当indexId set 22的时候是可以set的

在这里插入图片描述

我们发现sql语句也是正常的

在这里插入图片描述

表中数据也被更改了

在这里插入图片描述

但是当我们indexId为空的时候

在这里插入图片描述

sql语句中没有了set indexId这一属性。。

在这里插入图片描述

既然属性都没了,表是肯定没做修改的

在这里插入图片描述

问题解决

在实体类对应的字段上加注解@TableField(strategy=FieldStrategy.IGNORED),忽略null值的判断即可。需要注意的是使用该注解后这个属性就会全局忽略null值的判断

在这里插入图片描述

我们会发现sql中indexId这个属性也set为null了

在这里插入图片描述

那么表自然也会修改成null值

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44912902/article/details/134831776