常见的主键生成策略
- 自动增长 缺陷:分库分表时需要上一张表最后的值加1
- UUID 缺陷: 每次生成随机唯一的值 但随机生成值,但排序不方便
- Redis生成ID 原子操作实现
- mp自带策略 通过snowflake算法实现,每次生成值都不同
配置主键策略
在主键属性上加注解@TableId
@TableId(type= IdType.AUTO)
private Long id;
private String name;
private Integer age;
private String email;
AUTO:自动增长
INPUT:设置id值
NONE:输入
UUID:随机唯一值
ID_WORKER mp自带策略,生成19位的值, 数字类型使用这种策略
ID_WORKER_STR mp自带策略,生成19位的值,字符串类型使用这种策略