当前位置: 首页 > 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

在这里插入图片描述

相关文章:

  • 第三十六节:特征检测与描述-特征匹配
  • 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++小学全年级初赛试题
  • 沧州盐碱地“逆天改命”:无用之地变良田,候鸟翔集水草丰美
  • 水果预包装带来的环境成本谁来分担?
  • 商务部:对原产于美国、欧盟、台湾地区和日本的进口共聚聚甲醛征收反倾销税
  • 蒲慕明院士:好的科普应以“质疑、讨论公众关切的科学问题”为切入点
  • 以色列媒体:哈马斯愿意释放部分人员换取两个月停火
  • 辽宁援疆前指总指挥王敬华已任新疆塔城地委副书记