MyBatis-Plus 快速入门 -常用注解
目录
1. 常用注解
@TableName
@TableId
@TableField
2. IdType 枚举
3. 使用 @TableField 的常见场景
4. 完整示例
5. 总结
在使用 MyBatis-Plus 的过程中,我们经常会用到一些注解来完成实体类与数据库表字段之间的映射关系。本文将带你快速入门,了解 常用注解 的使用方法。
1. 常用注解
@TableName
-
作用:指定实体类对应的数据库表名。
-
示例:
@TableName("tb_user") public class User {}
@TableId
-
作用:指定表中的主键字段信息。
-
常用参数:
-
value
:数据库主键字段名。 -
type
:主键策略(如AUTO
表示自增)。
-
-
示例:
@TableId(value = "id", type = IdType.AUTO) private Long id;
@TableField
-
作用:指定表中的普通字段信息。
-
常用参数:
-
value
:数据库对应字段名。 -
exist
:是否为数据库字段(false
表示不是数据库字段)。
-
-
示例:
@TableField("username") private String name;@TableField(exist = false) private String address; // 非数据库字段
2. IdType 枚举
MyBatis-Plus 提供了多种主键生成策略:
-
AUTO:数据库自增。
-
INPUT:用户手动输入,通过
set
方法注入。 -
ASSIGN_ID:分配 ID,底层通过雪花算法生成全局唯一 ID。
示例:
@TableId(type = IdType.AUTO)
private Long id;
3. 使用 @TableField 的常见场景
-
成员变量名与数据库字段名不一致。
-
成员变量以
is
开头且为布尔值。 -
成员变量名与数据库关键字冲突。
-
成员变量不是数据库字段。
4. 完整示例
数据库表 tb_user
:
名称 | 数据类型 | 注释 | 默认值 |
---|---|---|---|
id | BIGINT | 用户id | 自增 |
username | VARCHAR | 用户名 | - |
is_married | BIT | 是否结婚 | 0 |
order | TINYINT | 序号 | NULL |
对应实体类:
@TableName("tb_user")
public class User {@TableId(value = "id", type = IdType.AUTO)private Long id;@TableField("username")private String name;@TableField("is_married")private Boolean isMarried;@TableField("order")private Integer order;@TableField(exist = false)private String address; // 非数据库字段
}
5. 总结
在 MyBatis-Plus 中,常用的注解主要有:
-
@TableName:映射数据库表名。
-
@TableId:定义主键及主键生成策略。
-
@TableField:映射普通字段或定义非数据库字段。
掌握这些注解,就能轻松完成实体类与数据库表的映射,大大提升开发效率。
✨ 如果你正在学习 MyBatis-Plus,可以先从这些注解入手,逐步深入,快速上手项目开发!