FieldStrategy 有三种策略:
- IGNORED:忽略
- NOT_NULL:非 NULL,默认策略
- NOT_EMPTY:非空
当用户有更新字段为 空字符串 或者 null 的需求时,需要对 FieldStrategy 策略进行调整:
-
方式一:调整全局的验证策略
注入配置 GlobalConfiguration 属性 fieldStrategy
-
方式二:调整字段验证注解
根据具体情况,在需要更新的字段中调整验证注解,如验证非空:
@TableField(strategy=FieldStrategy.NOT_EMPTY) -
方式三:使用
UpdateWrapper(3.x)使用以下方法来进行更新或插入操作:
mapper.update(new User().setName("mp").setAge(3),Wrappers.<User>lambdaUpdate().set(User::getEmail, null) //把email设置成null.eq(User::getId, 2) ); //也可以参考下面这种写法 mapper.update(null,Wrappers.<User>lambdaUpdate().set(User::getAge, 3).set(User::getName, "mp").set(User::getEmail, null) //把email设置成null.eq(User::getId, 2) );