[Mybatis-Plus笔记] MybatisPlus-04-映射匹配兼容性

一、指定表名

1. 注解@TableName

在实体类上注解 @TableName(“表名”) 来指定对应哪一个表

未指定时,默认将 BaseMapper 泛型中的类名作为表名

@Data
@TableName("tbl_user")
public class User {
    private Long id;
    private String name;
    private String password;
    private String email;
}

2. 配置 table-prefix

有些表名相比实体类名只是多了一个前缀而已,比如 User 类对应表名是 tbl_user

可以配置 table-prefix 属性指定前缀,Mybatis-Plus 会在类名前加上前缀,然后再去找对应的表

配置 yml 文件:

mybatis-plus:
  global-config:
    db-config:
      table-prefix: "tbl_"

当实体类注解了 @TableName,table-prefix 便不对其生效

二、指定字段名

在实体类的成员变量上注解 @TableField(“字段名”) 来指定对应的字段

例如类中的 password 对应的是表中的 pwd 字段:

@Data
@TableName("tbl_user")
public class User {
    private Long id;
    private String name;
    @TableField("pwd")
    private String password;
    private String email;
}

三、注解不存在字段

实体类中的成员变量不存在于表中,注解 @TableField(exist = false) 在成员变量上

例如表示在线的成员变量,不存在于表中:

@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("tbl_user")
public class User {
    private Long id;
    private String name;
    @TableField("pwd")
    private String password;
    private String email;
    @TableField(exist = false)
    private Boolean online;
}

版权声明:本文为Cey_Tao原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。