私にとっては、このように機能しています(mybatis 3.x)..IDはmysqlテーブルで自動インクリメントに設定する必要があります
<insert id="createEmpty" parameterType="Project" useGeneratedKeys="true" keyProperty="project.projectId" keyColumn="PROJECT_ID">
INSERT INTO PROJECT (TITLE,DESCRIPTION)
VALUES
(#{title},#{description})
</insert>
注
keyProperty="project.projectId"
およびuseGeneratedKeys="true"
私のインターフェースは:
public int createEmpty(@Param("project") Project project, @Param("title") String title,
@Param("description") String description);
最後に、値(pojoのidプロパティに自動的に割り当てられます)を取得するには、次を使用します:
projectRepository.createEmpty(p, "one", "two");
System.err.print(p.getProjectId() + "\n");