目录
使用自增主键是数据库中常用的唯一标识,今天尝试使用mybatisplus来实现三种方式的主键ID
使用起来也很简单 用注解指定一下使用那种方式的主键
一、什么是雪花算法
一种特殊的算法可以计算得到一个唯一标识
二、使用雪花算法
java
/**
* 数据库ID自增
* <p>该类型请确保数据库设置了 ID自增 否则无效</p>
*/
AUTO(0),
/* 以下2种类型、只有当插入对象ID 为空,才自动填充。 */
/**
* 分配ID (主键类型为number或string),
* 默认实现类 {@link com.baomidou.mybatisplus.core.incrementer.DefaultIdentifierGenerator}(雪花算法)
*
* @since 3.3.0
*/
ASSIGN_ID(3),
/**
* 分配UUID (主键类型为 string)
* 默认实现类 {@link com.baomidou.mybatisplus.core.incrementer.DefaultIdentifierGenerator}(UUID.replace("-",""))
*/
ASSIGN_UUID(4);

java
@RequestMapping("/test")
void test() {
//目前这个id是没有填充的
SysUser sysUser = new SysUser();
sysUser.setUserAccount("153abc");
sysUser.setUserPassword("h12345");
sysUser.setCreateBy(67L);
sysUser.setUpdateBy(99L);
System.out.println("调用insert之前的id:" + sysUser.getUserId());
sysUserService.insertUser(sysUser);
//调用之后,数据不仅会保存到数据库,而且会自动更新当前对象的值
System.out.println("调用insert之后的id:" + sysUser.getUserId());
}

数据库表中也会多一条数据
三、使用UUID
修改注解中的参数

数据不仅更新到数据库了 也帮我们更新了当前这个对象中的数据

