Mybatis之insert返回主键
来源:互联网 发布:展示网站源码 编辑:程序博客网 时间:2024/06/05 18:53
使用mybatis进行插入操作时,有时候我们插入完成后需要用到该记录的主键,那么先插入再查一次显然是不合理的,今天就记录一下mybatis使用insert语句自动返回主键值的办法;
首先声明一下返回主键是基于bean的,即insert的入参应该是一个bean,假设id字段为主键,则插入完成之后mybatis会自动给id字段赋值;其他情况
本次测试是在mysql下进行的,其他数据库可能会有差异;
废话不说,上代码:
public class TestDto {private int id;private String str;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getStr() {return str;}public void setStr(String str) {this.str = str;}}
mapper方法:
public int testMybatisReturnId(TestDto td);
mapperxml
<!-- 测试insert返回主键 --><!-- 方法1: useGeneratedKeys="true" keyProperty="id" --><!-- 方法2:<selectKey resultType="java.lang.Integer" keyProperty="id" order="AFTER" > SELECT @@IDENTITY</selectKey> --><insert id="testMybatisReturnId" parameterType="com.xxx.TestDto" useGeneratedKeys="true" keyProperty="id">insert into tt (str) values (#{str})</insert>
这是测试代码:
@Testpublic void testMybatisReturnId(){for (int i = 0; i < 5; i++) {TestDto td = new TestDto();td.setStr(UUID.randomUUID().toString());monitorMapper.testMybatisReturnId(td);System.out.println(td.getId());System.out.println("*******");}}
经测试,插入完成后可以把对应的id主键打印出来啦!done!
0 0
- Mybatis之insert返回主键
- Mybatis+mysql之insert返回主键id
- MyBatis insert 返回主键
- mybatis insert返回主键
- Mybatis insert 返回主键
- mybatis insert 返回主键
- mybatis insert 返回主键
- Mybatis insert返回主键
- mybatis insert 返回主键
- MyBatis insert操作返回主键
- MyBatis insert操作返回主键
- MyBatis insert操作返回主键
- MyBatis insert操作返回主键
- MyBatis insert操作返回主键
- MyBatis insert操作返回主键
- MyBatis insert操作返回主键
- MyBatis insert操作返回主键
- MyBatis insert操作返回主键
- 通过反射给bean赋值
- Objective-C学习篇第九弹:归档与解档
- eclipse 比较重要的快捷键总结 加快代码编写速度(android studio 也适用)
- Java 8 Lambda 表达式学习心得总结
- request.getParameter(“参数名”) 中文乱码解决方法
- Mybatis之insert返回主键
- ReactiveCocoa 框架 (一)-- 函数响应式编程(FRP)框架
- 数据包接收系列 — NAPI的原理和实现
- TCP网络协议以及其思想的应用
- JS中的prototype
- 一个用于提取内存的IDA脚本
- LightOJ 1297 - Largest Box【二分】
- C语言的内存分配
- PHP开发技巧