当前位置: 首页 > news >正文

MyBatis-Plus 的 updateById 方法不更新 null 值属性的问题

项目场景:

使用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

在这里插入图片描述

http://www.dtcms.com/a/198582.html

相关文章:

  • 第三十六节:特征检测与描述-特征匹配
  • 2025年PMP 学习二十 第13章 项目相关方管理
  • 【QGIS二次开发】地图编辑-06
  • python3GUI--智慧交通分析平台:By:PyQt5+YOLOv8(详细介绍)
  • 算法篇----二分查找
  • O2O电商变现:线上线下相互导流——基于定制开发开源AI智能名片S2B2C商城小程序的研究
  • #Redis黑马点评#(六)Redis当中的消息队列
  • k8s备份namespace
  • 多模态信息提取:打通数据价值的“最后一公里”
  • TDengine 在新能源领域的价值
  • 限流算法 + dfa敏感词过滤算法
  • MATLAB中的Switch语句讲解
  • 基于matlab/simulink锂电池算法学习集合(SOC、SOH、BMS)
  • React Flow 边的基础知识与示例:从基本属性到代码实例详解
  • LLM笔记(九)KV缓存调研
  • std::is_same
  • 5月18总结
  • leetcode报错原因总结需要背下来的程序片 [更新中]
  • 三:操作系统线程管理之线程概念
  • 2025年全国青少年信息素养大赛C++小学全年级初赛试题
  • 逻辑与非逻辑的弥聚
  • 【Linux】第二十章 管理基本存储
  • 双紫擒龙紫紫红指标源码学习,2025升级版紫紫红指标公式-重点技术
  • 基于单片机路灯自动控制仪仿真设计
  • 创建型:工厂方法模式
  • TASK03【Datawhale 组队学习】搭建向量知识库
  • 10.9 LangChain LCEL革命:43%性能提升+声明式语法,AI开发效率飙升实战指南
  • STM32H562----------启动时钟分析
  • Listener method could not be invoked with the incoming message
  • Linux之基础IO