MyBatis如何使用selectKey返回主键的值
更新时间:2022年01月23日 09:58:45 作者:pbyang5689
这篇文章主要介绍了MyBatis如何使用selectKey返回主键的值,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
使用selectKey返回主键的值
使用<selectKey>标签来获取插入操作主键返回的值。
对于MySQL数据库
<insert id="insert"> insert into user( username, password, email, info, headImg, createTime) values( #{username}, #{password}, #{email}, #{info}, #{headImg, jdbcType=BLOB}, #{createTime, jdbcType=TIMESTAMP}) <selectKey keyColumn="id" resultType="long" keyProperty="id" order="AFTER"> SELECT LAST_INSERT_ID() </selectKey> </insert>
通过selectkey返回insert或update后的值
实体类如下:
表结构如下:
其中varId为主键,但非自增
@selectKey使用
@selectKey
statement
:指定查询的语句keyProperty
:指定结果对应的实体类的字段,如果是多个字段,采用逗号,分隔。如varId,varName,keyColumn
:指定stament语句返回的列明,与keyProperty对应,如果多个,采用逗号分隔。resultType
:返回值类型before
:ture,插入前执行,false插入后执行
插入时,如何查询当前最大id,并赋值给实体类,示例如下:
方案1
插入前,首先查询当前最大的id,并赋值给实体对象
如下:
方案2
插入时,获取当前最大值,插入
插入后,查询当前最大的id,并赋值给实体对象。
如下:
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
- MyBatis insert语句返回主键和selectKey标签方式
- mybatis selectKey赋值未生效的原因分析
- Mybatis3中方法返回生成的主键:XML,@SelectKey,@Options详解
- mybatis 获取更新(update)记录的id之<selectKey>用法说明
- mybatis的selectKey作用详解
- Mybatis selectKey 如何返回新增用户的id值
- Mybatis插入时返回自增主键方式(selectKey和useGeneratedKeys)
- Mybatis @SelectKey用法解读
- Mybatis示例之SelectKey的应用
- MyBatis中selectKey标签及主键回填实现
相关文章
Java将集合List转换成String字符串(或String转换成List)详解
今天在写项目的时候遇到一个问题,就是要把得到的一个集合转换成字符串,下面这篇文章主要给大家介绍了关于Java将集合List转换成String字符串(或String转换成List)的相关资料,需要的朋友可以参考下2023-06-06@SpringBootConfiguration重复加载报错问题解决
@SpringBootApplication 注解的 exclude 属性用于排除特定的自动配置类,而不是用于排除主配置类本身,因此,不能通过 exclude 属性来排除主配置类的加载,这篇文章主要介绍了@SpringBootConfiguration重复加载报错,需要的朋友可以参考下2024-08-08Java实战之用springboot+netty实现简单的一对一聊天
这篇文章主要介绍了Java实战之用springboot+netty实现简单的一对一聊天,文中有非常详细的代码示例,对正在学习Java的小伙伴们有非常好的帮助,需要的朋友可以参考下2021-04-04
最新评论