springboot+mybatis insert 一条记录后返回这个insert的实体对象,请写出mapper 和xml代码 和调用方法
时间: 2024-02-13 21:02:47 浏览: 74
MyBatis insert操作插入数据之后返回插入记录的id
5星 · 资源好评率100%
好的,以下是对应的代码和调用方法。
1. Mapper代码
```
public interface UserMapper {
int insertUser(User user);
}
```
2. Mapper XML代码
```
<insert id="insertUser" parameterType="com.example.demo.entity.User">
insert into user(name, age) values (#{name}, #{age})
<selectKey keyProperty="id" order="AFTER" resultType="java.lang.Integer">
SELECT LAST_INSERT_ID()
</selectKey>
</insert>
```
3. 调用方法
```
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper userMapper;
@Override
public User createUser(User user) {
userMapper.insertUser(user);
return user;
}
}
```
这里的 `createUser` 方法会先调用 `userMapper` 的 `insertUser` 方法,插入一条记录到数据库中。然后,使用插入的实体对象 `user` 作为返回值,返回到调用方。在 Mapper XML 中,使用了 `selectKey` 标签可以在插入后获取自增主键的值,这样就可以在返回实体对象时包含主键的值了。
阅读全文