springboot+mybatis 插入新数据并返回该数据id值

方法一:
//实体类代码
public
class InitFile { //该类的id值 private Integer fileId;
...
}


mybatis xml中sql语句
<insert id="save">

//注意keyProperty 与类中的id属性名称要一致
    <selectKey keyProperty="fileId" resultType="int" order="AFTER">
//此处为mysql的函数
select LAST_INSERT_ID()
</selectKey>
insert into table_name
(...)
values
(...)
</insert>

当调用结束,会将id值塞入类中的id属性名称

应用时,如下示例;

service.save(initFile);
id = initFile.getFileId();
即可获取到该数据的id


方法二:
<insert id="save" useGeneratedKeys="true" KeyProperty="fileId">
    insert into table_name
(...)
values
(...)
</insert>

插入后, 会自动把插入的数据生成的ID


塞入到你这个 keyProperty 后面设置的 id这个参数里面。


执行之后 你直接取id 的值就好了。

和方法一相同的用法。

 

 

posted @ 2020-11-15 13:39  徐春晖  阅读(4208)  评论(0编辑  收藏  举报