Mybatis中如何获取生成的主键
发表于:2025-01-21 作者:千家信息网编辑
千家信息网最后更新 2025年01月21日,这篇文章主要介绍了Mybatis中如何获取生成的主键,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。如何获取生成的主键对于支持主键自增的
千家信息网最后更新 2025年01月21日Mybatis中如何获取生成的主键
这篇文章主要介绍了Mybatis中如何获取生成的主键,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
如何获取生成的主键
对于支持主键自增的数据库(MySQL)
insert into user( user_name, user_password, create_time) values(#{userName}, #{userPassword} , #{createTime, jdbcType= TIMESTAMP})
parameterType 可以不写,Mybatis可以推断出传入的数据类型。如果想要访问主键,那么应当parameterType 应当是java实体或者Map。这样数据在插入之后 可以通过ava实体或者Map 来获取主键值。通过 getUserId获取主键
不支持主键自增的数据库(Oracle)
对于像Oracle这样的数据,没有提供主键自增的功能,而是使用序列的方式获取自增主键。
可以使用<selectKey>
标签来获取主键的值,这种方式不仅适用于不提供主键自增功能的数据库,也适用于提供主键自增功能的数据库<selectKey>
一般的用法
SELECT USER_ID.nextval as id from dual insert into user( user_id,user_name, user_password, create_time) values(#{userId},#{userName}, #{userPassword} , #{createTime, jdbcType= TIMESTAMP})
此时会将Oracle生成的主键值赋予userId变量。这个userId 就是USER对象的属性,这样就可以将生成的主键值返回了。如果仅仅是在insert语句中使用但是不返回,此时keyProperty="任意自定义变量名",resultType 可以不写。
Oracle 数据库中的值要设置为 BEFORE ,这是因为 Oracle中需要先从序列获取值,然后将值作为主键插入到数据库中。
感谢你能够认真阅读完这篇文章,希望小编分享的"Mybatis中如何获取生成的主键"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!
数据
数据库
生成
篇文章
功能
支持
变量
实体
序列
方式
价值
兴趣
可以通过
同时
对象
就是
属性
是在
更多
朋友
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
喀什网络技术推荐厂家
合川区常规软件开发流程参考价
有关网络安全的小品剧本短
公安网的网络安全问题
数据库在哪练习
黑客网络安全面试
java 数据库项目实例
国享托养软件开发者
群晖找不到nas服务器
服务器oracle目录
网络安全进校园手抄报初一
2022网鼎杯网络安全大赛
如何理解数据库的概念
编程语言软件开发
日常应该注意哪些网络安全问题
ibm服务器i标志灯亮
近一周网络安全事件
国三网络技术报名
t1服务器连接失败
汪涛无线网络技术导论习题03
南京辉信软件开发
网络安全知识结构图
学软件开发的高职高专
数据库uml语言
网络安全一路同行中石化主题征文
江西服务器机柜货期
拖拽类软件开发
中国金融网络安全论坛在哪里
如何提高软件开发效率思维导图
万州区软件开发公司电话号码