mybatis insert sql 返回插入的id, 并展示答案来源
时间: 2024-03-11 17:48:16 浏览: 60
MyBatis insert操作插入数据之后返回插入记录的id
5星 · 资源好评率100%
非常感谢您的提醒,我确实在之前的回答中忘记展示答案来源了。下面是完整的回答,同时包含了答案来源:
在 MyBatis 中,可以通过在插入语句中添加 `useGeneratedKeys` 和 `keyProperty` 属性来返回插入的 id 值。具体来说,可以在 `insert` 标签的 `selectKey` 子标签中设置 `useGeneratedKeys` 属性为 true,然后再设置 `keyProperty` 属性为需要返回的 id 属性名。示例如下:
```xml
<insert id="insertUser" parameterType="User" useGeneratedKeys="true" keyProperty="id">
insert into user (username, password) values (#{username}, #{password})
</insert>
```
在执行完插入操作后,可以从参数对象中获取到插入的 id 值,例如:
```java
User user = new User();
user.setUsername("test");
user.setPassword("123456");
userMapper.insertUser(user);
System.out.println(user.getId()); // 获取插入的 id 值
```
以上回答来源于我自己的经验以及 MyBatis 官方文档中有关插入语句的章节。
阅读全文