<insert id="save" parameterType="com.xian.entity.admin.User" keyProperty="id" useGeneratedKeys="true">
insert into admin_user (nickname, username,
password, email, telephone,
department_id)
values (#{nickname,jdbcType=VARCHAR}, #{username,jdbcType=VARCHAR},
#{password,jdbcType=VARCHAR}, #{email,jdbcType=VARCHAR}, #{telephone,jdbcType=VARCHAR},
#{departmentId,jdbcType=INTEGER})
</insert>
注意一下keyProperty和useGeneratedKeys 。
虽然这条SQL返回的是插入成功数1,但是传入的参数因为是引用对象,所以它的id已经进行了赋值。所以再次查看传入的对象,你会发现他已经获得了ID的值了