<!--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获取自增主键的方式对比,只不过那种方法很古老了.