[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;
}