mybatis-plus中的useGeneratedKeys怎么用
时间: 2023-10-17 08:17:07 浏览: 237
Mybatis使用useGeneratedKeys获取自增主键的方法
Mybatis-Plus 中的 useGeneratedKeys 属性是用于指定是否使用自动生成的主键的。如果设置为 true,则表示使用自动生成的主键;如果设置为 false,则表示不使用自动生成的主键。
使用 useGeneratedKeys 属性需要做以下两个步骤:
1. 在实体类中定义主键字段,并设置主键生成策略为自增。
```java
public class User {
@TableId(type = IdType.AUTO)
private Long id;
private String name;
private Integer age;
// 省略 getter/setter 方法
}
```
2. 在 Mapper 接口的 insert 方法中设置 useGeneratedKeys 属性为 true,表示使用自动生成的主键。
```java
public interface UserMapper extends BaseMapper<User> {
@Insert("insert into user(name, age) values(#{name}, #{age})")
@Options(useGeneratedKeys = true, keyProperty = "id", keyColumn = "id")
int insertUser(User user);
}
```
在以上代码中,@Options 注解用于设置 useGeneratedKeys、keyProperty 和 keyColumn 属性:
- useGeneratedKeys:指定是否使用自动生成的主键。设置为 true 表示使用自动生成的主键。
- keyProperty:指定将自动生成的主键值设置到实体类的哪个属性中。
- keyColumn:指定自动生成的主键字段的名称。
这样,在调用 Mapper 接口的 insertUser 方法时,就可以自动生成主键值,并将它设置到 User 实体类的 id 属性中了。
阅读全文