Mybatisplus更新某个字段为null问题

 更新时间:2025年02月22日 15:56:32   作者:辉夜姬想环游世界  
Mybatisplus更新某个字段为null时,可以使用@TableField(updateStrategy=FieldStrategy.IGNORED)注解,该注解提供了字段映射、忽略非表字段、自动填充策略、字段条件处理等功能

Mybatisplus更新某个字段为null

使用@TableField(updateStrategy = FieldStrategy.IGNORED)注解要更新的字段。

@TableField注解是 Mybatisplus 框架中提供的一个注解,主要用于实体类(Entity)的字段上,帮助开发者更灵活地映射 Java 对象属性与数据库表字段之间的关系

主要功能:

1、字段映射

当实体类和数据库字段不一致时,可以是使用value属性指定数据库字段名

@TableField(value = "db_column_name")
private String entityFieldName;

2、忽略非表字段

若实体类中存在与数据库表无关的属性(如临时变量),需标记 exist = false,避免 MyBatis-Plus 将其误认为表字段。

@TableField(exist = false)
private String tempValue;

3、自动填充策略

配合 fill 属性实现字段的自动填充(如创建时间、更新时间)。

@TableField(fill = FieldFill.INSERT)
private LocalDateTime createTime;

@TableField(fill = FieldFill.INSERT_UPDATE)
private LocalDateTime updateTime;

4、字段条件处理

通过 condition 属性指定该字段在 SQL 条件中的生成规则(较少用)。

@TableField(condition = SqlCondition.LIKE)
private String name; // 生成 SQL 时会使用 `name LIKE ?`

5、相关策略

@TableField注解有三种策略:

  • insertStrategy(新增)
  • updateStrategy(更新)
  • whereStrategy(查询)

每种策略有五种类型:

  • IGNORED(忽略)
  • NOT_NULL(不为null)
  • NOT_EMPTY(不为空)
  • DEFAULT(默认)
  • NEVER(从不)

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • SSH框架网上商城项目第30战之项目总结(附源码下载地址)

    SSH框架网上商城项目第30战之项目总结(附源码下载地址)

    这篇文章主要介绍了SSH框架网上商城项目第30战之项目总结,并附源码下载地址,感兴趣的小伙伴们可以参考一下
    2016-06-06
  • Mybatis批量更新对象数据的两种实现方式

    Mybatis批量更新对象数据的两种实现方式

    这篇文章主要介绍了Mybatis批量更新对象数据的两种实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • Java线上问题排查神器Arthas实战原理解析

    Java线上问题排查神器Arthas实战原理解析

    原先我们Java中我们常用分析问题一般是使用JDK自带或第三方的分析工具如jstat、jmap、jstack、 jconsole、visualvm、Java Mission Control、MAT等,还有一款神器Arthas工具,可帮助程序员解决很多繁琐的问题,感兴趣的朋友一起看看吧
    2022-01-01
  • 如何创建SpringBoot项目

    如何创建SpringBoot项目

    这篇文章主要介绍了如何创建SpringBoot项目,帮助大家更好的学习和使用springboot框架,感兴趣的朋友可以了解下
    2021-01-01
  • java 中Buffer源码的分析

    java 中Buffer源码的分析

    这篇文章主要介绍了java 中Buffer源码的分析的相关资料,需要的朋友可以参考下
    2017-06-06
  • SpringBoot实现邮件推送的详细代码

    SpringBoot实现邮件推送的详细代码

    在项目中经常会遇到SpringBoot推送消息的业务,除了站内推送通知,邮件推送也是一种常见的方式,本文小编就带大家实现邮件推送,文中有详细代码讲解,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-04-04
  • springboot使用logback文件查看错误日志过程详解

    springboot使用logback文件查看错误日志过程详解

    这篇文章主要介绍了springboot使用logback文件查看错误日志过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • Feign的原理及概念详解

    Feign的原理及概念详解

    文章介绍了Feign,一个声明式、模板化的HTTP客户端,以及其在Spring Cloud中的增强,Feign通过代理类简化HTTP请求的调用,并提供了详细的调用流程、优化配置和架构说明,帮助开发者更方便地进行服务调用和管理
    2025-11-11
  • JAVA 格式化JSON数据并保存到json文件中的实例

    JAVA 格式化JSON数据并保存到json文件中的实例

    这篇文章主要介绍了JAVA 格式化JSON数据并保存到json文件中的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10
  • 计算一个Java对象占用字节数的方法

    计算一个Java对象占用字节数的方法

    这篇文章主要介绍了计算一个Java对象占用字节数的方法,较为详细的分析了Java中各类对象所占用的字节数,需要的朋友可以参考下
    2015-01-01

最新评论