一 . MyBatis mapper.xml文件中在xml

1.   加入 这句 :useGeneratedKeys="true" keyProperty="ID"

keyProperty="数据库中的主键字段名对应的实体类字段名" ;【填实体类字段名】

<insert id="insertSelective" parameterType="com.tc.lvmsm.vo.vm.Vehicle"useGeneratedKeys="true" keyProperty="ID">

2. 加  SELECT LAST_INSERT_ID()

<!-- 配置一个添加用户的sql语句,并且在查询之后得到用户的ID --><insert id="saveUser" parameterType="com.igeek.crm.pojo.User"><!-- selectKey 标签实现主键返回 --><!-- keyColumn:主键对应的表中的哪一列 --><!-- keyProperty:主键对应的pojo中的哪一个属性 --><!-- order:设置在执行insert语句前执行查询id的sql,孩纸在执行insert语句之后执行查询id的sql --><!-- resultType:设置返回的id的类型 --><selectKey keyColumn="id" keyProperty="id" order="AFTER"resultType="int">SELECT LAST_INSERT_ID()</selectKey>INSERT INTO `user`(username,birthday,sex,address) VALUES(#{username},#{birthday},#{sex},#{address})</insert>

3.不适用自增ID ,使用UUID做主键  加 SELECT uuid()

 <!-- 保存用户 使用UUID做主键 --><insert id="saveUser1" parameterType="com.igeek.crm.pojo.User"><!-- selectKey 标签实现主键返回 --><!-- keyColumn:主键对应的表中的哪一列 --><!-- keyProperty:主键对应的pojo中的哪一个属性 --><!-- order:设置在执行insert语句前执行查询id的sql,在执行insert语句之后执行查询id的sql --><!-- resultType:设置返回的id的类型 --><selectKey keyColumn="uuid" keyProperty="uuid" order="BEFORE"resultType="string">SELECT uuid()</selectKey>INSERT INTO `user1`(username,birthday,sex,address,uuid) VALUES(#{username},#{birthday},#{sex},#{address},#{uuid})</insert>

二.TkMyBatis通用Mapper中 在实体类的主键属性上加 注解:

1.自增主键用法:

     @Id@GeneratedValue(strategy=GenerationType.IDENTITY)private Integer id;   

2.序列主键用法(适用Oracle):

   @Id@GeneratedValue(strategy = GenerationType.IDENTITY,Generator = "select SEQ_ID.nextval from dual"  )private Integer id;

谢谢赞助与支持!

Java代码TkMyBatis通用Mapper中新增数据时同时获取自增主键ID,与适用uuid 做主键时获取 id相关推荐

  1. java向mysql写入数据慢_通过java代码往mysql数据库中写入日期相关数据少13个小时...

    通过show variables like '%time_zone%'; 查看时区: CST 时区 名为 CST 的时区是一个很混乱的时区,有四种含义: 美国中部时间 Central Standard ...

  2. SpringBoot整合TkMybatis(通用mapper)

    TkMybatis目录 SpringBoot整合TkMybatis(通用mapper) SpringBoot整合TkMybatis(通用mapper)(自定义xml文件) 源码 GitHub: htt ...

  3. java实现读取excel表格中的数据,兼容xls和xlsx

    前言 利用 java 实现读取 excel 表格中的数据,兼容 xls 与 xlsx 格式,不用额外做区分,写不同的实现方法. 引入的依赖包 <dependency><groupId ...

  4. java代码怎么在cmd中运行?cmd怎么打开java代码?

    java代码怎么在cmd中运行是一个比较简单的问题,但还是有很多人频繁询问,今天本篇文章为大家统一解答一下这个问题. java代码怎么在cmd中运行? 1.首先用记事本写一个简单的Java程序,保存成 ...

  5. 程序通过定义学生结构体变量,存储学生的学号、姓名和3门课的成绩。函数fun的功能是:对形参b所指结构体变量中的数据进行修改,并在主函数中输出修改后的数据。...

    程序通过定义学生结构体变量,存储学生的学号.姓名和3门课的成绩.函数fun的功能是:对形参b所指结构体变量中的数据进行修改,并在主函数中输出修改后的数据.例如,若b所指变量t中的学号.姓名和三门课的成 ...

  6. 【SpringBoot学习】28、Spring Boot 整合 TKMybatis 通用 Mapper

    文章目录 Spring Boot 整合 TKMybatis 自定义父类接口 新增接口 新增之后回显 Id 更新 删除 单查询 查询列表 计数 条件构造器 技术分享区 Spring Boot 整合 TK ...

  7. java代码将excel文件中的内容列表转换成JS文件输出

    思路分析 我们想要把excel文件中的内容转为其他形式的文件输出,肯定需要分两步走: 1.把excel文件中的内容读出来: 2.将内容写到新的文件中. 举例 一张excel表中有一个表格: 我们需要将 ...

  8. 不用POI技术,JAVA给Word文档中的数据区域赋值

    在本地磁盘上打开一个Word文件,添加内容或插入图片是十分容易的,但是如何在线打开一个Word文件并修改Word文件内容或者插入图片呢,这时就需要通过PageOffice开发平台,给数据区域赋值,来实 ...

  9. js 中 java 代码_在js中嵌套java代码

    jsp中有时候在js中操作某些java后台传递过来的数据逻辑比较复杂,比如list内容的遍历,可以直接在页面上添加java脚本来执行内容,代码如下: //在js中插入java代码操作 //取出java ...

最新文章

  1. 和12岁小同志搞创客开发:手撕代码,做一款火焰报警器
  2. 从JAVA转学习Go——Go在eclipse的环境搭建
  3. 链表线性表及其操作c语言代码大全,用链表实现线性表的各种操作(C语言)
  4. ZOJ 2317 Nice Patterns Strike Back(矩阵快速幂)
  5. BUUCTF-WEB:[HCTF 2018]WarmUp
  6. Qt Creator指定动态属性
  7. 有效的数独Python解法
  8. 转载、Python的编码处理(二)
  9. 软件构造学习笔记-第十一周
  10. Android功耗(9)---MTK功耗问题分析1
  11. atitit.获取connection hibernate4
  12. CAPL基础知识学习
  13. 诚龙网刻报错_诚龙PXE网刻工具11.5
  14. 某企业信息安全体系整体建设方案规划方案毕业设计毕业答辩
  15. 工作模板-----MySQL示例
  16. sis最新ip地址2020入口一_2020最新国风修仙问道3DMMORPG手游大道争锋官网正版首发入口...
  17. 视觉技术的圣杯:光线追踪如何再现真实世界?
  18. 学计算机高考英语听力考试,北京:2018年高考英语听力机考问答
  19. 贾又福大象鸿蒙,2016贾又福工作室师生优秀作品全国巡展
  20. 为什么在POS非常火爆的时候代还系统还能抢下市场呢?

热门文章

  1. C++常识“屯”和“烫”
  2. Asset mangagement Resources(完善中)
  3. (oracle)八、表
  4. servlet路径跳转
  5. 【转】Linux之printf命令
  6. 数据库版本自带的mysql replication双机主从备份安装配置
  7. 企业运维经典面试题汇总(3)
  8. 软件工程简答题和应用题
  9. 虚拟机安装VMware ESXi 6.7安装过程介绍
  10. java网络编程,HttpClient 应用~