一、问题
1、在使用Mybatis-plus的更新方法的时候,如果传递的参数中某个字段为null,则默认不会对为null的字段更新成null,如果需要将某个字段更新为null,解决方法如下:
在要更新为null的字段上加上注解 strategy = FieldStrategy.IGNORED。
这个值默认是要进行非空检查的,来看源码:
//字段策略枚举类
public enum FieldStrategy {
IGNORED(0, "忽略判断"),
NOT_NULL(1, "非 NULL 判断"),
NOT_EMPTY(2, "非空判断");
//省略部分代码
}
我们要的效果是此处忽略要设置为null的字段的非空检查,所以应该如下配置:
/**
* 父级ID,null表示无父级
*/
@TableField(value = "parent_dim_column_id",strategy = FieldStrategy.IGNORED)
private Integer parentDimColumnId;
更多推荐
使用Mybatis-plus的更新方法更新null字段的解决方案
发布评论