mybatis新增数据库一条数据数据库id是自增的,我怎么获取到刚新增的数据
时间: 2024-05-07 13:23:04 浏览: 93
mybatis学习之路mysql批量新增数据的方法
在MyBatis中,插入数据可以使用`insert`语句,同时也可以使用`selectKey`标签来获取自增主键值。具体步骤如下:
1.在Mapper.xml文件中,使用`insert`语句插入数据,并使用`selectKey`标签来获取自增主键值,示例如下:
```
<insert id="insertUser" parameterType="User">
insert into user (name, age) values (#{name}, #{age})
<selectKey keyProperty="id" order="AFTER" resultType="java.lang.Long">
SELECT LAST_INSERT_ID()
</selectKey>
</insert>
```
其中,`keyProperty`属性指定主键属性名,`order`属性指定`selectKey`语句的执行顺序,`resultType`属性指定返回值类型,`LAST_INSERT_ID()`是MySQL函数,用于获取最后插入行的自增ID。
2.在Java代码中,调用`insert`方法并将数据对象作为参数传入,插入数据并获取主键值,示例如下:
```
User user = new User();
user.setName("Tom");
user.setAge(18);
userMapper.insertUser(user);
Long id = user.getId();
```
其中,`userMapper`是`Mapper`接口的实例,通过`SqlSession`获取。`user.getId()`即为获取自增主键值。
阅读全文