在平时业务需求中,有可能会需要当前新增对象的主键ID。

在此我对用UUID作为主键ID做了实验。

1 <selectKey  keyProperty="user.userId" resultType="java.lang.String" order="BEFORE">
2              select uuid()
3 </selectKey>

keyProperty:selectKey子元素返回值将赋值到领域模型的哪个属性中。
resultType:返回结果类型
order:BEFORE 标识在执行插入语句之前执行

在设置keyProperty="user.userId"时这段代码会在执行insert语句之前产生一条uuid并赋值到当前user对象中的userId中。

所以在新增成功后直接getUserId就可以获取当前主键了


转载于:https://www.cnblogs.com/codespirit/p/6476833.html

mybatis生成UUID主键,且获取当前新增的UUID主键相关推荐

  1. 从mong 主键ObjectId获取插入时间

    有时候插入mongo的文档,没有记录createTime信息,此时可以通过解析mongo主键ObjecetId获取当前时间,前提是主键是mongo自动生成的 ObjectId 实际上它是由一组十六进制 ...

  2. MyBatis 获取数据库中自增主键值

    一.在 SQL 映射文件的 select 标签中添加 useGeneratedKeys="true" 属性与 keyProperty=" " 属性,keyPro ...

  3. mybatis使用statement.getGenreatedKeys(); useGeneratedKeys=”true”;使用自增主键获取主键值策略和Oracle不支持自增,Oracle使用序列

    parameterType: 参数类型, 可以省略 mysql支持自增主键,自增主键的获取, mybatis也是利用statement.getGenreatedKeys();  useGenerate ...

  4. 数据库面试题【十四、主键使用自增ID还是UUID】

    推荐使用自增ID,不要使用UUID.因为在InnoDB存储引擎中,主键索引是作为聚簇索引存在的,也就是说,主键索引的B+树叶子节点上存储了主键索引以及全部的数据(按照顺序),如果主键索引是自增ID,那 ...

  5. mybatis新增时将主键值返回(注解方式)

    mybatis新增时将主键值返回: @Insert("insert into driver_account_appeal (driver_id,driver_name,driver_phon ...

  6. Bootstrap4+MySQL前后端综合实训-Day08-AM【多表查询sql语句、关联数据的假删除、自动增长主键的获取、栏目管理“数据编辑”按钮的实现】

    [Bootstrap4前端框架+MySQL数据库]前后端综合实训[10天课程 博客汇总表 详细笔记][附:实训所有代码] 目   录 多表查询sql语句 关联数据的假删除(status状态码/数据可恢 ...

  7. java读取ES配置生成ES管理类,获取ES连接

    java读取ES配置生成ES管理类,获取ES连接 1.Elasticsearch是基于Lucene开发的一个分布式全文检索框架,向Elasticsearch中存储和从Elasticsearch中查询, ...

  8. 主码索引、聚集索引、非主码索引(辅助索引)、唯一索引、外键索引、复合索引、非主码索引、聚集主码(聚集索引)、单列索引、多列索引、普通索引等...

    强烈建议看了第一个参考文献再来看这个篇博文,因为此处不准备讲底层数据结构的实现. 索引:索引(Index)是帮助MySQL高效获取数据的数据结构.提取句子主干,就可以得到索引的本质:索引是数据结构.其 ...

  9. mysql自增主键到头了怎么办_自增主键用完了怎么办

    在面试中,大家应该经历过如下场景 面试官:"用过mysql吧,你们是用自增主键还是UUID?" 你:"用的是自增主键" 面试官:"为什么是自增主键?& ...

最新文章

  1. qt 多个模型如何显示在表格中_Qt MOOC系列教程 第五章第四节:QML中的C++模型
  2. 网络推广外包浅析怎样选择网站域名规则会更有利于SEO优化?
  3. Win10系列:JavaScript 的 WinJS库
  4. 解决yarn build时报错:内存溢出FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed
  5. linux下重启weblogic(关闭和启动)
  6. Hash魔法:一致性 hash 算法
  7. PHP连接mysql数据库使用方法,PHP连接MySQL数据库的操作方法
  8. I00004 贝尔三角形(解法二)
  9. 入门-什么是webshell?
  10. 《PaaS程序设计》一1.2 云能为创新做什么
  11. 霍尔元件在高斯计上的应用与工作原理
  12. CentOS操作系统密码复杂度策略设置
  13. 计算机课程哪个网校比较好,计算机软考在线学习哪个好
  14. 认知差距决定我们的人生差距?!
  15. java粒子群算法_Java多线程技术实现的粒子群优化算法
  16. 这16个数据可视化案例,惊艳了全球数据行业
  17. MAC如何将[搜狗输入法]设置为默认输入法
  18. 汽车信息安全标准ISO/SAE21434与UN/WP.29阅读总结
  19. 服务器许可证书,lic-auth: 基于Spring的项目中使用 `TrueLicense `生成和验证`License证书`(服务器许可)的示例代码...
  20. Power and Modulo(思维)

热门文章

  1. openshift介绍及centos7安装单节点openshift、Redhat安装openshift集群完全教程
  2. TCP的连接和释放过程
  3. 请简短说明一下你对AQS的理解
  4. BlockingQueue阻塞队列
  5. idea 中javax.servlet.http.HttpServlet包导不进来
  6. jQuery easyUI--弹窗的使用
  7. Spring之RestTemplate如何返回map结果集
  8. Starting MySQL.... ERROR! The server quit without updating PID file
  9. 如何让整个表格高度固定_财务预算太费精力?多亏了这73张财务预算表格模板,让你算量快又准!直接用...
  10. python提供了_Python中 为我们提供了一些独特的解决方案的方法特性