Mybatis-insert数据返回主键id
来源:互联网 发布:java 图片上传非jsp 编辑:程序博客网 时间:2024/05/26 08:43
一,前言
在使用Mybatis做insert操作时,有时候我们希望能够或得插入后数据的主键,例如一个自增id字段,在后续的逻辑中我们可以会使用到这个字段做数据结构上的关联,以下是Mybatis中的实现
二,场景
我们模拟一个需要insert数据后返回主键,在后续逻辑中使用这个主键的场景:现在我们有一个满减的需求,数据库表设计为满减基础信息表,满减等级表,和满减商品表如: 基本信息:买牙膏送牙刷, 满减等级:100-10,200-30,300-50 满减商品:1000001,1000002,1000003如此一来,我们需要靠基本信息表的主键id来关联等级和商品的所属情况
三,insert数据返回主键id
使用@Options(useGeneratedKeys = true, keyProperty = “id”, keyColumn = “id”)返回主键id
/** * Created by Brave on 2017/3/15. */@Mapperpublic interface PromotionFullcutMapper { @Insert("insert into promotion_fullcut (name, create_time, update_time, " + "create_by, update_by, active, begin_time, end_time) " + "values (" + "#{name, jdbcType=VARCHAR}, " + "#{createTime, jdbcType=TIMESTAMP}, " + "#{updateTime, jdbcType=TIMESTAMP}, " + "#{createBy, jdbcType=VARCHAR}, " + "#{updateBy, jdbcType=VARCHAR}, " + "#{activeStatus, jdbcType=INTEGER}, " + "#{beginTime, jdbcType=TIMESTAMP}, " + "#{endTime, jdbcType=TIMESTAMP}" + ")") @Options(useGeneratedKeys = true, keyProperty = "id", keyColumn = "id") int insertFullCutInfo(FullCutEntity FullCutObj);}
四,测试
在我们的数据库中已经有一组id=1的数据,我们先取出来这组数据,再添加进行测试
// testFullCutEntity fullCutEntity = promotionFullcutService.queryFullCutDetail(1);promotionFullcutService.insertFullCutDetail(fullCutEntity);
测试:
取出数据库中id=1的一组数据:
使用这组数据,重新插入一组到数据库并返回主键id:
此时返回的主键id=17为新插入数据的主键id,并在后续的逻辑中使用此id,完成数据关联
查看数据库中的数据关系:
基础信息表:17 买牙膏送牙刷 2017-11-21 14:16:11 admin 1 2017-11-01 14:16:27 2017-11-30 14:16:30等级表:22 17 1 100.00 10.0023 17 2 200.00 30.0024 17 3 300.00 50.00Sku表:7 17 10000018 17 10000029 17 1000003
阅读全文
0 0
- Mybatis-insert数据返回主键id
- Mybatis insert返回主键ID
- mybatis+mysql insert添加数据后返回数据主键id
- Mybatis+mysql之insert返回主键id
- mybatis 怎样在insert数据之后返回主键id (MySQL,Oracle数据库)
- MyBatis insert 返回主键
- mybatis insert返回主键
- Mybatis insert 返回主键
- mybatis insert 返回主键
- mybatis insert 返回主键
- Mybatis insert返回主键
- mybatis insert 返回主键
- mybatis 插入数据返回主键id
- Mybatis中insert中返回主键ID的方法
- Mybatis中insert中返回主键ID的方法
- Mybatis中insert中返回主键ID的方法
- MyBatis在insert插入操作时返回主键ID
- Mybatis返回主键id
- openssl常用命令
- 泰坦尼克号生还分析数据
- 关于类中的getInstance()方法的用法和作用
- c指针
- 用阿里云国外主机搭建VPN服务
- Mybatis-insert数据返回主键id
- 通用循环队列的实现
- 明明白白你的Linux服务器——安全篇
- mongoose-os读取ds18b20
- Unknown server tag 'asp:Chart'. 最最最简单解决办法。
- IDEA 快捷键(持续更新)
- 织梦调取技巧
- 路虎中DS1协议
- 获取数据库最后一条数据