O tipo de retorno do método de inserção mapeado pode ser
void ou int (nesse caso retornará o número da linha inserida). Você pode fazer o seguinte mecanismo para retornar o id gerado:<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>
Isso definirá o
id gerado coluna para id propriedade de sua classe de parâmetro. Depois disso, o objeto que você passou como parâmetro terá gerado id fixado em sua propriedade.