Mybatis2之返回主键的两种实现方法
<insert id="insertUUID" parameterType="com.itheima.mybatis.pojo.User" >
<selectKey keyProperty="uuid2" resultType="string" order="BEFORE">
select UUID();
</selectKey>
INSERT INTO USER
(`username`,
`sex`,
`address`,
`birthday`,
`uuid2`)
VALUES
(#{username},
#{sex},
#{address},
#{birthday},
#{uuid2});
</insert>
以上代码返回UUID,注意返回主键也可用以下的方法:
<insert id="insertUser" parameterType="com.itheima.mybatis.pojo.User" useGeneratedKeys="true" keyProperty="id" order = "After">
但是如果既配置了标签useGeneratedKeys,又在下面写了selectKey标签,那么只有下面的标签实现,上面的id就不是实现了,实际业务也只要返回一个唯一主键就可。另外UUID需要先生成的所以是BEFORE,ID是插入最后一条数据后自增返回的。
另外注意对于事物需要commit。