【亲测有效】Mybatis-Plus中更新字段为null
Mybatis-Plus中更新字段为null
遇到问题
Mybatis-Plus更新的默认行为如下:
Mybatis-Plus默认如果某个字段为null, 默认不更新这个字段, 例如有个Double类型的字段, 当前数据库数据为10, 然后传参时当前字段为null, 实际上Mybatis-Plus是不会覆盖该字段为null的
在传参的时候如果字段为null时, 需要把原来的值覆盖为null存入数据库
解决办法
在实体类中给需要更新为null的字段加上如下注解:
@TableField(updateStrategy = FieldStrategy.IGNORED)
private Double lower;
代表该字段为null时, Mybatis-Plus也会更新数据库为null !