天天看点

mybatisplus自动生成id_mybatis-plus主键id生成、字段自动填充的实现代码

一、主键id的生成

数据库表里通常都会有一个主键id,来作为这条数据的唯一标识。fEL免费资源网

常见的方式fEL免费资源网

1.数据库自动增长fEL免费资源网

这种很常见了,可以做到全库唯一。因为id是天然排序的,对于涉及到排序的操作会很方便。fEL免费资源网

2.UUIDfEL免费资源网

上面的自动增长,虽然简单,但是对于分表这样的操作来说就比较麻烦。因为你在第二张插入数据的时候,需要拿到上一张表最后一个数据的id。fEL免费资源网

UUID则不同,每次都一个随机唯一的值,不过因为是随机,所以也就没有排序了。fEL免费资源网

3.redisfEL免费资源网

redis也可以用来生成id,利用redis的原子操作。好处是可以不依赖数据库,性能好,但是随之因为redis的引入,带来了一定的复杂度。fEL免费资源网

mybatis-plus的方式

其实在之前使用mp进行新增数据的时候,我并没有进行对应的配置,默认就会带有主键id。fEL免费资源网

mybatisplus自动生成id_mybatis-plus主键id生成、字段自动填充的实现代码

fEL免费资源网

对其配置也很简单,在主键上加注解,@TableId(type = IdType.ID_WORKER)fEL免费资源网

@Data

public class User {

@TableId(type = IdType.ID_WORKER)

private Long id;

private String name;

private Integer age;

private