解决mybatisPlus null 值更新的问题

 更新时间:2021年02月20日 08:37:02   作者:tplina  
这篇文章主要介绍了解决mybatisPlus null 值更新的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

发现mybatisPlus会更新对象属性为null的值,

与field-strategy配置有关

mybatis-plus:
 global-config:
  db-config:
   field-strategy: not_null

在3.1.0版本中,其选择的值有

public enum FieldStrategy {
  IGNORED,
  NOT_NULL,
  NOT_EMPTY,
  DEFAULT; 
  private FieldStrategy() {
  }
}

我刚开始选择的是ignored,所以null值会更新,像这样:

改成not_null,就是这样了

官网解释:

该策略约定了如何产出注入的sql,涉及insert,update以及wrapper内部的entity属性生成的 where 条件

官方链接: https://mp.baomidou.com/config/#fieldstrategy

补充:mybatis-plus更新的时候忽略null值判断

一般会更新操作都会判断null值,为null就不更新对应的字段。

但是有时候需要把特定的字段更新为null,使用mybatis-plus时可以在实体类特定属性上面加注解@TableField(strategy=FieldStrategy.IGNORED),就会忽略null值判断,将null更新进数据库。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

相关文章

  • 一文盘点五种最常用的Java加密算法

    一文盘点五种最常用的Java加密算法

    大家平时的工作中,可能也在很多地方用到了加密、解密,比如:支付功能等,所以本文为大家盘点了Java中五个常用的加密算法,希望对大家有所帮助
    2023-06-06
  • Java编写的24点纸牌游戏

    Java编写的24点纸牌游戏

    这篇文章主要介绍了Java编写的24点纸牌游戏的相关资料,需要的朋友可以参考下
    2015-03-03
  • Java使用Lua实现动态扩展和脚本自动升级

    Java使用Lua实现动态扩展和脚本自动升级

    Lua是一种轻量级的脚本语言,常用于游戏开发和嵌入式系统中,这篇文章主要介绍了Java如何调用Lua实现动态扩展和脚本自动升级,感兴趣的可以学习下
    2023-08-08
  • 使用java为pdf添加书签的方法(pdf书签制作)

    使用java为pdf添加书签的方法(pdf书签制作)

    下载一些pdf格式的电子书没有书签,用JAVA写了一个小工具,将特定格式的文本解析成为书签,然后保存到pdf格式中
    2014-02-02
  • Spring整合Junit详解

    Spring整合Junit详解

    Spring 是目前主流的 Java Web 开发框架,是 Java 世界最为成功的框架。该框架是一个轻量级的开源框架,具有很高的凝聚力和吸引力,本篇文章带你了解如何配置数据源、注解开发以及整合Junit
    2022-07-07
  • Java中的List接口实现类LinkList和ArrayList详解

    Java中的List接口实现类LinkList和ArrayList详解

    这篇文章主要介绍了Java中的List接口实现类LinkList和ArrayList详解,List接口继承自Collection接口,是单列集合的一个重要分支,实现了List接口的对象称为List集合,在List集合中允许出现重复的元素,所有的元素是以一种线性方式进行存储的,需要的朋友可以参考下
    2024-01-01
  • springboot学习之Thymeleaf模板引擎及原理介绍

    springboot学习之Thymeleaf模板引擎及原理介绍

    本文主要介绍一下SpringBoot给我们推荐的Thymeleaf模板引擎,这模板引擎呢,是一个高级语言的模板引擎,他的这个语法更简单而且功能更强大,对springboot Thymeleaf模板引擎相关知识感兴趣的朋友一起看看吧
    2022-02-02
  • Java中的字节流InputStream和OutputStream详解

    Java中的字节流InputStream和OutputStream详解

    这篇文章主要介绍了Java中的字节流InputStream和OutputStream详解,继承自InputStream的流都是用于向程序中输入数据,且数据的单位为字节8bit,我们看到的具体的某一些管道,凡是以InputStream结尾的管道,都是以字节的形式向我们的程序输入数据,需要的朋友可以参考下
    2023-10-10
  • 在Spring环境中正确关闭线程池的姿势

    在Spring环境中正确关闭线程池的姿势

    这篇文章主要介绍了在Spring环境中正确关闭线程池的姿势,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • 使用try-with-resource的输入输出流自动关闭

    使用try-with-resource的输入输出流自动关闭

    这篇文章主要介绍了使用try-with-resource的输入输出流自动关闭方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07

最新评论