目录

  • mybatis-plus常见的几个注解
  • 相关资料
  • @TableName 表名注解
  • @TableId 主键注解
  • @TableField 字段注解


mybatis-plus常见的几个注解

相关资料

官方文档

@TableName 表名注解

  • 描述:表名注解,标识实体类对应的表
  • 使用位置:实体类
@TableName("sys_user")
public class User {
    private Long id;
    private String name;
    private Integer age;
    private String email;
}

@TableId 主键注解

  • 描述:主键注解
  • 使用位置:实体类主键字段
@TableName("sys_user")
public class User {
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    private String name;
    private Integer age;
    private String email;
}

这里的主键type一般都是数据库id自增即 AUTO,还有其他属性,NONE用的也比较多
NONE 无状态,该类型为未设置主键类型(注解里等于跟随全局,全局里约等于 INPUT)
INPUT insert 前自行 set 主键值
ASSIGN_ID 分配 ID(主键类型为 Number(Long 和 Integer)或 String)(since 3.3.0),使用接口IdentifierGenerator的方法nextId(默认实现类为DefaultIdentifierGenerator雪花算法)
ASSIGN_UUID 分配 UUID,主键类型为 String(since 3.3.0),使用接口IdentifierGenerator的方法nextUUID(默认 default 方法)
最长用的还是 AUTO和NONE

@TableField 字段注解

  • 描述:字段注解(非主键)
@TableName("sys_user")
  public class User {
      @TableId(value = "id", type = IdType.AUTO)
      private Long id;

      @TableField(value = "nick_name")
      private String name;

      @TableField(exist = false)
      private Integer age;
  }

这里的nick_name 是数据库里的字段名,有的时候我们在该实体类中添加的字段但在数据库表中是没有的,但有些依赖又需要保持一致
我们需要设置 exist 属性为 false。以上是最常用的两种方式