mybatis-plus id策略
时间: 2023-09-27 16:04:17 浏览: 57
Mybatis-Plus 是一款 Mybatis 增强工具,它提供了许多便捷的操作和功能。其中,关于 id 策略的处理也是 Mybatis-Plus 的一个特点。
在 Mybatis-Plus 中,可以使用以下几种 id 策略:
1. `ASSIGN_ID`:使用自定义的 ID,需要手动设置 ID 值。
2. `ASSIGN_UUID`:使用 UUID 作为 ID,需要在实体类中使用 `@TableId(type = IdType.ASSIGN_UUID)` 注解。
3. `AUTO`:自增长 ID,需要在实体类中使用 `@TableId(type = IdType.AUTO)` 注解。
4. `ID_WORKER`:使用雪花算法生成全局唯一 ID,需要在实体类中使用 `@TableId(type = IdType.ID_WORKER)` 注解。
5. `ID_WORKER_STR`:与 `ID_WORKER` 类似,但 ID 类型为字符串类型,需要在实体类中使用 `@TableId(type = IdType.ID_WORKER_STR)` 注解。
以上就是 Mybatis-Plus 中常用的 id 策略,开发者可以根据实际情况选择合适的策略。
相关问题
mybatis-plus id 生成策略
Mybatis-Plus提供了多种ID生成策略,具体如下:
1. 默认使用雪花算法生成全局唯一ID,可通过`IdType.ASSIGN_ID`指定。
2. 使用数据库自增ID,可通过`IdType.AUTO`指定。
3. 使用UUID,可通过`IdType.UUID`指定。
4. 使用雪花算法生成字符串格式的ID,可通过`IdType.ASSIGN_ID`和`@TableId(type = IdType.ASSIGN_ID, value = "id", length = 20)`指定。
5. 使用雪花算法生成固定长度的ID,可通过`IdType.ASSIGN_ID`和`@TableId(type = IdType.ASSIGN_ID, value = "id", length = 19)`指定。
6. 使用自定义的ID生成器,需要实现`IdentifierGenerator`接口,并在实体类中使用`@TableId(type = IdType.ASSIGN_ID, value = "id", typeHandler = MyIdentifierGenerator.class)`指定。
其中,`typeHandler`指定了自定义ID生成器的类型处理器。
mybatis-plus主键策略
Mybatis-plus提供了多种主键生成策略,可以在Pojo类中通过注解进行配置。其中一种常见的策略是使用数据库主键自增,可以在主键字段上使用@TableId(type=IdType.AUTO)注解来实现。除此之外,Mybatis-plus还提供了其他四种主键生成策略,具体可参考Mybatis-Plus官方文档中的详细说明。
在设计数据库时,我们还可以仅仅指定主键,而不指定主键的生成策略,然后在持久化数据时再指定主键的生成策略。这种灵活的设计方式可以满足不同场景下的需求,特别是在分布式系统中,主键的生成策略需要考虑到唯一性和性能的问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span>