【摘要】:MyBatis 提供了多种方式来实现插入数据后返回主键的值。其中,常用的方式有以下两种:其中,useGeneratedKeys表示使用数据库自动生成的主键,keyProperty表示将自动生成的主键值设置到哪个属性中。在执行完插入操作后,可以通过以下代码获取插入的主键值:其中,selectKey标签用于执行 SELECT LAST_INSERT_ID() 语句来获取插入的主键值,resultType表示返回值的类型,keyProperty表示将返回的主键值设置到哪个属性中,order表示在插入之后执行。
MyBatis 提供了多种方式来实现插入数据后返回主键的值。其中,常用的方式有以下两种:
- 在 Insert 语句中添加 useGeneratedKeys 和 keyProperty 属性
sqlCopy code
<
insert id
="insertUser" parameterType
="com.example.User" useGeneratedKeys
="true" keyProperty
="id"
>
insert
into
user (username, password)
values (#{username}, #{password})
<
/
insert
>
其中,useGeneratedKeys表示使用数据库自动生成的主键,keyProperty表示将自动生成的主键值设置到哪个属性中。 (www.xing528.com)
在执行完插入操作后,可以通过以下代码获取插入的主键值:
sqlCopy code
User
user
=
new
User("test", "123456");
int
rows
= sqlSession.insert("insertUser",
user); System.out.println(user.getId());
- 在 Insert 语句中添加 selectKey 标签
sqlCopy code
<
insert id
="insertUser" parameterType
="com.example.User"
>
<selectKey resultType
="java.lang.Integer" keyProperty
="id"
order
="AFTER"
>
SELECT LAST_INSERT_ID()
<
/selectKey
>
insert
into
user (username, password)
values (#{username}, #{password})
<
/
insert
>
其中,selectKey标签用于执行 SELECT LAST_INSERT_ID() 语句来获取插入的主键值,resultType表示返回值的类型,keyProperty表示将返回的主键值设置到哪个属性中,order表示在插入之后执行。
在执行完插入操作后,可以通过以下代码获取插入的主键值:
sqlCopy code
User
user
=
new
User("test", "123456");
int
rows
= sqlSession.insert("insertUser",
user); System.out.println(user.getId());
以上是两种常用的方式,使用哪一种方式取决于具体的情况。如果数据库支持自动生成主键,则可以使用第一种方式;如果不支持,则可以使用第二种方式。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。