MybatisPlus 设置属性为空如何防止插入数据

在使用 MybatisPlus 进行数据库操作时,我们可能会遇到这样的问题:当实体类中某些属性为空时,MybatisPlus 会将这些空值插入到数据库中。为了避免这种情况,我们可以通过配置 MybatisPlus 的全局配置和实体类注解来解决。

1. 配置全局配置

首先,在配置文件(如 application.yml)中添加以下配置:

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

该配置指定了插入策略为 not_null,表示只有当属性不为空时才插入数据库。

2. 使用实体类注解

然后,在实体类中使用 @TableField 注解来标注属性,并设置 insertStrategy 属性为 NOT_NULL

@TableField(insertStrategy = FieldStrategy.NOT_NULL)
private String name;

这样,在插入数据时,如果属性为空,MybatisPlus 将会忽略该属性,不进行插入操作。如果属性不为空,则会插入数据库。

注意

以上配置和注解适用于 MybatisPlus 3.x 版本。如果使用的是 MybatisPlus 2.x 版本,可以使用 @TableField 注解的 exist 属性来控制插入行为。

MybatisPlus 设置属性为空如何防止插入数据

原文地址: https://www.cveoy.top/t/topic/p22q 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录