插入后的主键获取

本文介绍了三种在MyBatis中获取插入数据后主键的方法,并重点解析了使用`<selectKey>`标签的注意事项,强调了在`order="AFTER"`时如何确保主键值能正确赋值给实体类。同时,警告了在插入方法中设置返回值可能导致的数据未实际写入数据库的问题。
摘要由CSDN通过智能技术生成

目录

 

方法1

方法2

方法3

注意:插入后获得主键的误区

 


方法1

蠢方法,插入后,按照特征获取刚刚那条数据的id

方法2

在实体类的映射文件 "*Mapper.xml" 这样写:

<insert id="insertAndGetId" useGeneratedKeys="true" 
keyProperty="userId" parameterType="com.chenzhou.mybatis.User">
    insert into user(userName,password,comment)
    values(#{userName},#{password},#{comment})
</insert>
useGeneratedKeys="true" 表示给主键设置自增长
keyProperty="userId"  表示将自增长后的Id赋值给实体类中的userId字段。
parameterType="com.chenzhou.mybatis.User" 这个属性指向传递的参数实体类
这里提醒下,<insert></insert> 中没有resultType属性,不要乱加。
实体类中uerId 要有getter() and setter(); 方法

方法3

同样在实体类的映射文件 "*Mapper.xml" 但是要这样写:


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值