如果不想每次都给ID赋值,希望插入的时候自动赋值。在insert之前加入下面的语句即可
<insert id="insert" parameterType="com.luren.test" >
<selectKey keyProperty="id" resultType="string" order="BEFORE">
select sys_guid() from dual
</selectKey>
</insert>
数据库实用的是oracle,如果是mysql这种支持自动增长的就不能这么使用,上面是自动生成主键。
insert的返回的时候,会将成功插入的条数返回。如果我们需要将ID返回需要加上下面这段话。
<insert id="insert" parameterType="com.luren.test" useGeneratedKeys="false" keyProperty="id" >
<selectKey keyProperty="id" resultType="string" order="BEFORE">
select sys_guid() from dual
</selectKey>
</insert>
因为oralce不支持自动增长所以需要将useGeneratedKeys设置为false,这样insert之后返回的值就是主键了。