数据库(mySQL)中user表有两个字段user_id(主键,自增),user_name,实体类为User,对应属性为userId,userName,则对应的mapper如下:
<insert id="getInsertId">
<selectKey resultType="int" keyProperty="userId" order="AFTER">
select last_insert_id()
</selectKey>
insert into user(user_name) values ( #{userName})
</insert>
或
<insert id="getInsertId" useGeneratedKeys="true" keyProperty="userId" >
insert into user values (null, #{userName})
</insert>
均可。
要点是必须传入实体类,插入表中的值为实体类属性(实体类属性个数可以小于表字段数),且获取id要通过该实体类的getUserId()来获取。