获取自增主键值的第一种方式
<insert id="savePerson" parameterType="Person" useGeneratedKeys="true" keyProperty="id">
insert into person(name,gender,age,birthday)
values(#{name},#{gender},#{age},#{birthday})
</insert>
useGeneratedKeys为true 表示取新增该条记录自增主键值。
keyProperty=“id” 表示取出主键值,设置给对象的哪个属性,赋给id属性.
获取自增主键值的第二种方式
<insert id="savePerson" parameterType="Person">
<selectKey keyColumn="id" keyProperty="id" resultType="int" order="AFTER">
select last_insert_id()
</selectKey>
insert into person(name,gender,age,birthday)
values(#{name},#{gender},#{age},#{birthday})
</insert>
keyColumn 表示取数据库表指定列的值。
keyProperty 将取出的值设置给person对象的指定的属性
resultType 返回值的类型
order 在执行sql语句之前还是之后取值