环境
mybatis-plus-3.1.0
一、场景详述
数据库中有字段#A为字符串设计,默认可以为NULL,该字段有内容,当更新该条目时,前端传过来的字段中并未包含该字段#A,此时去更新数据库的时候,该字段其实默认为NULL。MyBatis-Plus默认配置策略是:当更新数据库值时,传过来的字段为NULL时,则忽略更新。
想要实现的效果是:当前端未传该字段时,该字段默认为NULL,也去数据库中更新该字段。
二、配置分析
1、Mybatis-Plus默认配置数据库更新策略如下(全局配置)
mybatis-plus:
global-config:
# 数据库相关配置
db-config:
#字段策略 IGNORED:"忽略判断",NOT_NULL:"非 NULL 判断"),NOT_EMPTY:"非空判断"
field-strategy: not_null
默认的更新的策略为非NULL判断,所以,当我们想将数据库中的某个值设置为NULL时(该字段可为NULL),该策略就会忽略此操作。
2、更改MyBatis-Plus策略为忽略判断
field-strategy: ignored
局部方法:
/**
* 创建人
*/
@TableField(strategy = FieldStrategy.IGNORED)
public Long createdBy;
/**
* 创建时间
*/
@TableField(strategy = FieldStrategy.IGNORED)
public String createdAt;
作者:静美书斋
链接:https://www.jianshu.com/p/ef6555249f58
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。