mybatisplus包中的IdType
时间: 2023-12-11 08:33:54 浏览: 153
Mybatis-plus是一个Mybatis的增强工具,其中的IdType是用于指定主键生成策略的枚举类型。IdType包括以下几种类型:
1. AUTO:数据库自增,对应MySQL的AUTO_INCREMENT属性。
2. NONE:未设置主键,对应MySQL的无主键表。
3. INPUT:自行输入,需要手动输入主键值。
4. ASSIGN_ID:全局唯一ID,使用雪花算法生成。
5. ASSIGN_UUID:全局唯一UUID,使用UUID算法生成。
6. ID_WORKER:全局唯一ID,使用Mybatis-plus自带的ID生成器生成。
7. UUID:全局唯一UUID,使用UUID算法生成。
例如,如果要使用ASSIGN_ID作为主键生成策略,可以在全局配置文件中进行如下配置:
```yaml
mybatis-plus:
global-config:
db-config:
id-type: assign_id
```
如果要在模型类中使用ASSIGN_UUID作为主键生成策略,可以在@Id注解中指定type属性:
```java
@TableId(type = IdType.ASSIGN_UUID)
private String id;
```
相关问题
mybatisplus 的idtype
MybatisPlus的IdType是一个枚举类型,用于指定主键生成策略。它包括以下几种类型:
1. AUTO:数据库ID自增
2. NONE:该类型为未设置主键类型
3. INPUT:用户输入ID
4. ID_WORKER:全局唯一ID,Long类型
5. UUID:全局唯一ID,String类型,UUID.randomUUID().toString(),去掉"-"符号
例如,在实体类中使用MybatisPlus的@TableId注解指定主键生成策略为ID_WORKER,代码如下:
```java
@TableId(value = "user_id", type = IdType.ID_WORKER)
private Long userId;
```
mybatisplus IdType.NONE
Mybatis-Plus is a popular library in the Java ecosystem that enhances the functionality of MyBatis, a lightweight persistence framework. When defining entity classes in Mybatis-Plus, you can specify the ID type using the `@TableId` annotation.
The `IdType` enum in Mybatis-Plus provides different options for ID generation strategies. The `NONE` value of `IdType` indicates that the ID column will not be auto-generated or assigned by any strategy. It means that you need to manually set the ID value when inserting a new record into the database.
Here's an example of how you can use `IdType.NONE` with MyBatis-Plus:
```java
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
@TableName("my_table")
public class MyEntity {
@TableId(type = IdType.NONE)
private Long id;
// Other class members and methods
}
```
In this example, the `id` field of the `MyEntity` class is annotated with `@TableId(type = IdType.NONE)`, indicating that the ID will not be generated automatically.
阅读全文