文章目录:
1.MyBatis-Plus注解
2.准备实体类和表结构
3.MyBatis-Plus增删改查
4.MyBatis-Plus逻辑删除
5.MyBatis-Plus乐观锁插件
6.MyBatis-Plus其他
7.MyBatis-Plus代码生成器
8.MyBatis-Plus配置类
一、自定义id生成器
注解类型
IdType中类型 | 描述 |
---|---|
AUTO(0) | 数据库自增 依赖数据库 |
NONE(1) | 表示该类型未指定主键类型 (如果没有主键策略)默认根据雪花算法生成 |
INPUT(2) | 用户输入ID(该类型可以通过自己注册填充插件进行填充) |
ASSIGN_ID(3) | 支持自动转换为String类型,但数值类型不支持自动转换,需精准匹配,例如返回Long,实体主键就不支持定义为Integer |
ASSIGN_UUID(4) | 默认不含中划线的UUID生成 |
实体类注解
@TableId(type = IdType.ASSIGN_ID)
private Long id;
测试
userMapper.insert(new User().setName("小明").setAge(23).setEmail("xm@163.com").setVersion(1));
/*
Preparing: INSERT INTO user ( ID, NAME, AGE, EMAIL, VERSION, CREATE_TIME ) VALUES ( ?, ?, ?, ?, ?, ? )
Parameters: 1213659384740179970(Long), 小明(String), 23(Integer), xm@163.com(String), 1(Integer), 2020-01-05 11:12:00.682(Timestamp)
*/
二、自动填充功能
- 需求:新增时createTime插入当前时间,修改时updateTime插入当前时间。
配置类
@Component