El tipo de retorno del método de inserción mapeado puede ser void
o int
(en cuyo caso devolverá el número de la fila insertada). Puede hacer el siguiente mecanismo para devolver la identificación generada:
<insert id="insert" parameterClass="MyParameter">
<selectKey order="AFTER" keyProperty="id" resultType="long">
SELECT currval('my_seq')
</selectKey>
INSERT INTO mytable(col1, col2) VALUES (#{val1}, #{val2})
</insert>
Esto establecerá el id
generado columna a id
propiedad de su clase de parámetro. Después de eso, el objeto que pasó como parámetro habrá generado id
establecido en su propiedad.