mybatis-plus获取自增id
时间: 2023-08-31 17:10:17 浏览: 405
mybatis-plus id主键生成的坑
在 MyBatis-Plus 中获取自增id,可以通过以下几种方式实现:
1. 使用 `@TableId(type = IdType.AUTO)` 注解:在实体类的主键字段上添加该注解,并设置 `type` 属性为 `IdType.AUTO`。这将告诉 MyBatis-Plus 使用数据库的自增机制来生成主键值。在插入数据后,可以通过获取实体对象的主键字段值来获取自增id。
示例代码:
```java
@TableId(type = IdType.AUTO)
private Long id;
```
2. 手动设置自增id返回:在插入数据后,可以通过 `BaseMapper` 的 `insert` 方法的返回值来获取自增id。
示例代码:
```java
User user = new User();
user.setName("John Doe");
user.setAge(25);
userMapper.insert(user);
Long id = user.getId(); // 获取自增id
```
3. 使用数据库的特定函数获取自增id:根据不同的数据库,可以使用对应的函数来获取自增id。
例如,对于 MySQL 数据库,可以使用 `LAST_INSERT_ID()` 函数获取最后插入的自增id。
示例代码:
```java
userMapper.insert(user);
Long id = userMapper.getLastInsertId(); // getLastInsertId() 方法中执行 SQL:SELECT LAST_INSERT_ID()
```
注意:以上方法的可行性和具体实现可能因数据库类型和版本而有所差异,请根据实际情况选择适合的方法。
阅读全文