标签:添加用户 滴滴 style 点点滴滴 sel 策略 操作 bottom 类型
当向数据库中插入一行数据时,<insert>标签中的占位符#{}中的占位符的值写 model 类的属性名,但是要保证数据库中的字段名和属性名要一致,属性可以多余数据表的字段,但是不能少。这也是约定高于配置。
<!-- 添加用户 --> <insert id="insertUser" parameterType="com.msym.beans.User"> <selectKey keyProperty="id" resultType="Integer" order="AFTER"> select LAST_INSERT_ID() </selectKey> insert into user (username,birthday,address,sex) values (#{username},#{birthday},#{address},#{sex}) </insert>
User 类的属性:
private static final long serialVersionUID = 1L; private Integer id; private String username;// 用户姓名 private String sex;// 性别 private Date birthday;// 生日 private String address;// 地址
在第一点中,添加用户时,在<insert>标签中还有一个标签<selectKey>标签,这个标签用户获取当前插入数据的主键值,比如 user 表中的主键 id 是自增长的 int 类型,因为采用的数据库是 mysql ,在 mysql 中 int 类型自增主键是先插入数据,然后生成主键,所以在 order 属性中填写的是 after,而不是 before,如果使用的数据库是 oracle ,就得使用 before,因为 oracle 采用的策略是先生成自增主键,然后在插入数据。
这样配置后,之前添加到数据库中的对象就具有了主键了,可以操作其他关联到的表了。
标签:添加用户 滴滴 style 点点滴滴 sel 策略 操作 bottom 类型
原文地址:http://www.cnblogs.com/daimajun/p/7076867.html