MyBatis提供了多种自动生成主键的方法,以下是其中几种常用的方法:
示例:
<insert id="insertUser" parameterType="User" useGeneratedKeys="true" keyProperty="id">
INSERT INTO user (name, age) VALUES (#{name}, #{age})
</insert>
示例:
<insert id="insertUser" parameterType="User">
INSERT INTO user (name, age) VALUES (#{name}, #{age})
<selectKey resultType="Long" keyProperty="id" order="AFTER">
SELECT LAST_INSERT_ID()
</selectKey>
</insert>
示例:
public class User {
private String id;
// ...
public User() {
this.id = UUID.randomUUID().toString();
}
}
需要注意的是,使用以上三种方法时,需要在映射文件中正确设置keyProperty属性,指定实体类中对应的主键字段。