MyBatis中插入记录后获取该条记录ID
主键生成有两种方式:
- 主键自增长,需要得到插入成功后数据库生成的id
- 自定义主键,主要用于分布式开发,一般是现在java代码中生成id,然后存入数据库
MyBatis中主键回填的两种实现方式:
(1)推荐方式
<insert id="insert" useGeneratedKeys="true" keyProperty="id">
insert into t_user (name,password) values (#{name},#{password});
</insert>
设置useGeneratedKeys="true"
,设置keyProperty="id"
,接收回传主键的属性id,成功后id的值就是回传主键的值
(2)使用 MySQL的LAST_INSERT_ID()
<insert id="insert" parameterType="cn.appblog.pojo.User">
insert into t_user (name) values (#{user.name})
<selectKey resultType="Integer" order="AFTER" keyProperty="user.userId">
SELECT LAST_INSERT_ID() AS userId
</selectKey>
</insert>
这里是用User类接收,也可自定义属性接收。
在Mapper.xml文件中设置完后,在插入记录后,就会返回id值给对象,直接通过对象get方法就可以获得id
User user = new User();
user.setName("Joe.Ye");
tUserMapper.insert(user);
user.getId();
版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/03/11/obtain-record-id-after-inserting-it-into-mybatis/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。
THE END
0
二维码
打赏
海报
MyBatis中插入记录后获取该条记录ID
主键生成有两种方式:
主键自增长,需要得到插入成功后数据库生成的id
自定义主键,主要用于分布式开发,一般是现在java代码中生成id,然后存入数据库
MyBa……
文章目录
关闭
共有 0 条评论