您的位置:首页 > 其它

mybatis主键回填的几种方式

2017-11-30 14:19 211 查看
1.对于int 可自增长型主键在.xmi映射文件中配置

<!-- 主键回填useGeneratedKeys="true" keyProperty="deptId" -->

<!-- keyProperty属性指定了哪个是主键字段,useGeneratedKeys的含义则是告诉mybatis这个主键是否使用数据库内置的策略生成 -->
<insert id="addDept" parameterType="com.uddtrip.login.pojo.Dept"
useGeneratedKeys="true" keyProperty="deptId">
insert into dept(dept_name)
values(#{deptName})
</insert>

2.对于uuid string型主键.xmi映射文件中配置

<!-- 自定义主键 useGeneratedKeys="true" selectKey -->
<insert id="addEmp" parameterType="com.uddtrip.login.pojo.Emp" useGeneratedKeys="true" >
<selectKey keyProperty="empId" order="BEFORE" resultType="java.lang.String">
select
UUID()
</selectKey>
insert into emp(emp_id,emp_name,sex,salary) values(#{empId},#{empName},#{sex},#{salary})
</insert>

或在java类中操作

emp.setEmpId(UUID.randomUUID().toString());

两者效果等价
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: