項目場景:
使用Mybatis-plus的updateById去更新實體類的時候,如果設置實體類中的某個字段為null,會導致為null的字段不做更新操作
問題描述
updateById方法 不會更新null值
解決方案:
在字段上加上
@TableField(updateStrategy = FieldStrategy.IGNORED)
參數說明
FieldStrategy 是 MyBatis-Plus 框架中的一個枚舉類,用于定義字段更新策略。
該枚舉類包含以下幾個常量:
IGNORED:意思是"忽略判斷",所有值都更新和插入。
NOT_NULL:當字段為 null 時不進行更新。
NOT_EMPTY:當字段為null 或空字符串時不進行更新。
DEFAULT:使用數據庫默認值進行更新。 NEVER:永遠不更新字段的值。
全局配置 yaml文件這樣配置
#如果在更新操作時,如果字段為null,也要進行更新操作
mybatis-plus.global-config.db-config.update-strategy=ignored