mybatis插入后返回主键id的3种方式图解
第一种:在xml文件,insert标签属性中,添加useGeneratedKeys和keyProperty,如图

第二种:在xml文件,添加selectKey标签属性,各个属性值含义:resultType:查询结果的类型;keyProperty:把查询的值赋给谁;order:在插入前还是后执行,id在insert语句插入之后才会生成id,所以要在插入之后执行,所以此处order=after;

第三种:在dao层用注解的方式,用@SelectKey注解,里面属性含义:resultType:查询结果的类型,keyProperty:把查询的值赋给谁; statement:查找最后一个插入的id; keyColumn:查询的是哪一列; before:是否在插入之前执行, id在insert语句插入之后才会生成id,所以要在插入之后执行,所以此处before=false;

最后解释一下“select last_insert_id()”这条语句,它是配合插入语句一块只用的,在insert语句执行成功后可以返回新增数据的id,如图所示:

总结
到此这篇关于mybatis插入后返回主键id的3种方式的文章就介绍到这了,更多相关mybatis插入后返回主键id内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
SpringBoot整合SpringSecurity认证与授权
在项目开发中,权限认证是很重要的,尤其是一些管理类的系统,对于权限要求更为严格,本文主要介绍了SpringBoot整合SpringSecurity认证与授权,感兴趣的可以了解一下2023-11-11
JAVA多线程之中断机制stop()、interrupted()、isInterrupted()
这篇文章主要介绍了JAVA多线程之中断机制stop()、interrupted()、isInterrupted()的相关资料,需要的朋友可以参考下2016-05-05
idea中service或者mapper引入报红的问题及解决
在使用IntelliJ IDEA开发SpringBoot项目时,有时会遇到Service或Mapper接口引入时报红但不影响项目运行的情况,这主要是因为IDEA的检查级别设置问题,解决方法是将有问题的Error级别改为编译通过的安全级别,即可消除报红2024-09-09
使用Spring和Redis创建处理敏感数据的服务的示例代码
许多公司处理的用户敏感数据由于法律限制不能永久存储,根据规定,这些数据的存储时间不能超过预设期限,并且最好在用于服务目的之后就将其删除,解决这个问题有多种可能的方案,在本文中,我想展示一个利用 Spring 和 Redis 处理敏感数据的应用程序的简化示例2025-04-04


最新评论