mybatis与mysql插入时返回主键id的值

   <insert id="insertCharge" parameterType="com.bb.bean.Rechargerecord">
<selectKey keyProperty="id" resultType="java.lang.Integer" order="AFTER">
select LAST_INSERT_ID()
</selectKey>
INSERT INTO rechargeRecord(loginId,loginName,name)
values(#{loginId},#{loginName},#{name})
</insert>

这里的keyProperty="id"中的id要与数据库中的主键名相同,同时记着order="AFTER" 是在获取到id值后再返回。

在插入成功后,要活的id需要从对象Rechargerecord.getId()获得,而不是在

int i= this.insertBySql("Rechargerecord.insertCharge",rechargerecord)返回的i。这里的i始终是返回执行成功的条数。

之前自己以为i会是id的值,结果搞了半天。mybatis自动会将返回的主键set在对象对应的主键id的属性中。

上一篇:快速完成网页设计,10个顶尖响应式HTML5网页模板助你一臂之力


下一篇:[深度学习]实现一个博弈型的AI,从五子棋开始(2)