温馨提示×

mybatis自动生成主键的方法是什么

小亿
307
2023-08-18 22:10:54
栏目: 编程语言

MyBatis提供了多种自动生成主键的方法,以下是其中几种常用的方法:

  1. 使用数据库的自增主键:在数据库中将主键字段设置为自增类型,然后在MyBatis的映射文件中不需要显式指定主键的值,数据库会自动生成主键值。

示例:

<insert id="insertUser" parameterType="User" useGeneratedKeys="true" keyProperty="id">
INSERT INTO user (name, age) VALUES (#{name}, #{age})
</insert>
  1. 使用SELECT LAST_INSERT_ID()函数:在插入数据之后,通过SELECT LAST_INSERT_ID()函数来获取自动生成的主键值。

示例:

<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>
  1. 使用UUID生成主键:通过Java代码生成UUID作为主键值。

示例:

public class User {
private String id;
// ...
public User() {
this.id = UUID.randomUUID().toString();
}
}

需要注意的是,使用以上三种方法时,需要在映射文件中正确设置keyProperty属性,指定实体类中对应的主键字段。

0