MyBatis插入对象后返回获得自增的主键

2018-12-29 wjy329 Java学习 1

很多情况下,我们的主键都是自增的,我们可能在插入后马上就获取到刚刚插入的数据的主键,下面就来记录一下:

插入记录在MyBatis中的写法:

<insert id="saveXxx" parameterType="com.wjy329.entity.xxx">
<selectKey resultType="Integer" order="AFTER" keyProperty="id">
SELECT LAST_INSERT_ID()
</selectKey>
insert into tableName(`line2`,`line3`)
values(#{line2},#{line3})
</insert>

关键在于

<selectKey resultType="Integer" order="AFTER" keyProperty="id">
SELECT LAST_INSERT_ID()
</selectKey>

你以为仅仅获取到这个就行了?那是不可能的,直接获取返回的int,你会发现是一个固定的数字,它代表刚才插入数据影响的行。

在执行完插入操作后,我们只需在后面直接用getId()方法就行,例如: 

studentDao.saveStudent(student);
Integer id = student.getId;
本文作者:wjy329
版权声明:本博客除特殊说明外均属本人原创。如需转载请署名作者及文章出处。
评论