mybatis执行insert后马上能获取自增主键的语句写法
Posted ukzq
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis执行insert后马上能获取自增主键的语句写法相关的知识,希望对你有一定的参考价值。
<!--keyColumn keyProperty useGeneratedKeys 用于在插入数据后,能直接使用user.getId()获取主键-->
<insert id="insert" keyColumn="Id" keyProperty="id" parameterType="com.chinacarbonal.carboncms.bean.UserRole" useGeneratedKeys="true"> insert into user_role (user_id, role_id) values (#{user_id,jdbcType=INTEGER}, #{role_id,jdbcType=INTEGER}) </insert>
在今天的项目中,使用了mybatis中的如上sql语句,其中的keyColumn为数据库字段名, keyProperty为实体类的该属性名.
useGenerateKeys表示,当这条insert命令执行成功以后,可以直接在控制层或Service层中调用userRole.getId()来获取insert后生成的自增主键.
本以为写完整点的自增主键获取与旧式JDBC获取自增主键的方式对比,只不过那种方法很古老了.
以上是关于mybatis执行insert后马上能获取自增主键的语句写法的主要内容,如果未能解决你的问题,请参考以下文章