当前位置: 代码网 > it编程>编程语言>Java > Mybatisplus更新某个字段为null问题

Mybatisplus更新某个字段为null问题

2025年02月23日 Java 我要评论
mybatisplus更新某个字段为null使用@tablefield(updatestrategy = fieldstrategy.ignored)注解要更新的字段。@tablefield注解是 m

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(从不)

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com