ispringboot+mybatis id不是自增长的而是uuid 如何获取新增后id值
时间: 2024-03-19 12:44:52 浏览: 53
mybatis获取自增ID
如果你使用的是UUID作为主键,那么你可以在插入数据后通过Mybatis的`selectKey`标签获取插入后的主键值。示例如下:
```xml
<insert id="insertUser" parameterType="User">
insert into user (id, name, age) values (#{id}, #{name}, #{age})
<selectKey keyProperty="id" order="AFTER" resultType="java.lang.String">
select last_insert_id()
</selectKey>
</insert>
```
在上面的例子中,`selectKey`标签的`keyProperty`属性指定了需要将获取到的主键值赋值给哪个对象的属性。在这里,我们将获取到的主键值赋值给`User`对象的`id`属性。`order`属性指定了在什么时候执行`selectKey`标签中的SQL语句,这里设置为`AFTER`表示在插入数据后执行。`resultType`属性指定了返回值的类型,这里设置为`java.lang.String`,因为我们使用的是UUID作为主键。
当你调用`insertUser`方法插入数据时,`selectKey`标签会自动获取插入后的主键值,并将其赋值给`User`对象的`id`属性。你可以在插入数据后直接通过`User`对象的`getId()`方法获取插入后的主键值。
阅读全文