一、主键id的生成
数据库表里通常都会有一个主键id,来作为这条数据的唯一标识。
常见的方式
1. 数据库自动增长
这种很常见了,可以做到全库唯一。因为id是天然排序的,对于涉及到排序的操作会很方便。
2. UUID
上面的自动增长,虽然简单,但是对于分表这样的操作来说就比较麻烦。因为你在第二张插入数据的时候,需要拿到上一张表最后一个数据的id。
UUID则不同,每次都一个随机唯一的值,不过因为是随机,所以也就没有排序了。
3. redis
redis也可以用来生成id,利用redis的原子操作。好处是可以不依赖数据库,性能好,但是随之因为redis的引入,带来了一定的复杂度。
mybatis-plus的方式
其实在之前使用mp进行新增数据的时候,我并没有进行对应的配置,默认就会带有主键id。
对其配置也很简单,在主键上加注解,@TableId(type = IdType.ID_WORKER)
@Data
public class User {
@TableId(type = IdType.ID_WORKER)
private Long id;
private String name;
private Integer age;
private String email;
@TableField(fill = FieldFill.INSERT)
priv