MyBatis-Plus常用注解
官方文档:
https://baomidou.com/introduce/
快速开始
1.引入 MyBatis-Plus Starter 依赖
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.5.7</version> </dependency>
2.自定义的Mapper继承MybatisPlus提供的BaseMapper接口
public interface UserMapper extends BaseMapper<User> { }
常用注解
MyBatisPlus通过扫描实体类,并基于反射获取实体类信息作为数据库表信息。
约定:
类名 驼峰转下划线作为表名
名为id的字段作为主键
变量名 驼峰转下划线作为表的字段名
常用注解:
@TableName: 用来指定表名
@TableId: 用来指定表中的主键字段信息
@TableFeild: 用来指定表中的普通的字段信息
@TableId(value = "id", Type = IdType.AUTO)
IdType枚举:
AUTO: 数据库自增长
INPUT: 通过set方法自行输入
ASSIGN_ID (默认): 分配ID,接口IdentufierGenerator的方法nextId来生成Id。默认实现类为DefaultIdentifiedGenerator雪花算法
使用@TableFeild的常见场景:
1. 成员变量名与数据库字段名不一致
@TableFeild("username")
private String name;
2.成员变量以is开头,且是布尔值
@TableFeild("is_married")
prviate Boolean isMarried;
3.成员变量名与数据库关键字冲突
@TableFeild("`order`") private Integer order;
4.成员变量不是数据库字段
// address不是数据库字段 @TableFeild(exist = false) private String address