mybatis主键回填
Posted 永旗狍子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis主键回填相关的知识,希望对你有一定的参考价值。
主键回填
标签:< selectKey id="" parameterType="" order="AFTER|BEFORE">
1.通过last_insert_id()查询主键
这种类型主要适用于整数类型自增主键
<mapper namespace="qf.Dao.EmpDao">
<insert id="regEmp" parameterType="qf.entity.Emp">
<selectKey keyProperty="eno" resultType="int" order="AFTER"> <!-- 插入之后 -->
SELECT LAST_INSERT_ID() <!-- 适用于整数类型自增主键 -->
</selectKey>
insert into emp(eno,ename,esex,salary,pwd,dno,borndate) values(#{eno},#{ename},#{esex},#{salary},#{pwd},#{dno},#{borndate})
</insert>
</mapper>
2.通过uuid()查询主键
适用于字符串类型主键
<mapper namespace="com.qf.mybatis.part1.basic.OrderDao">
<insert id="insertOrder" parameterType="order">
<selectKey keyProperty="id" resultType="String" order="BEFORE"><!-- 插入之前 -->
SELECT REPLACE(UUID(),'-','') <!-- 适用于字符类型主键 -->
</selectKey>
INSERT INTO t_order(id,name) VALUES(#{id},#{name})
</insert>
</mapper>
以上是关于mybatis主键回填的主要内容,如果未能解决你的问题,请参考以下文章
Mybatis模糊查询——三种定义参数方法和聚合查询主键回填
JavaLearn#(27)MyBatis进阶:Mapper代理(接口绑定)多参数传递模糊查询分页自增主键回填动态SQL一级缓存二级缓存
JavaLearn#(27)MyBatis进阶:Mapper代理(接口绑定)多参数传递模糊查询分页自增主键回填动态SQL一级缓存二级缓存