mybatis插入值的时候返回对象的主键值
mapping文件:
<insert id="insert" parameterType="com.vimtech.bms.business.riskprojectapproval.domain.RiskProjectApproval" >
insert into WF_RISK_PROJECT_APPROVAL (RISKTGID, PROJID, CREATEDATE,
UPDATEDATE, STATUS, CONCLUSION,
CREATOR, RISKTYPE, APPLYTYPE,
ISCOMPENSATORY)
values (#{risktgid,jdbcType=NUMERIC}, #{projid,jdbcType=NUMERIC}, #{createdate,jdbcType=TIMESTAMP},
#{updatedate,jdbcType=TIMESTAMP}, #{status,jdbcType=INTEGER}, #{conclusion,jdbcType=VARCHAR},
#{creator,jdbcType=VARCHAR}, #{risktype,jdbcType=INTEGER}, #{applytype,jdbcType=INTEGER},
#{iscompensatory,jdbcType=INTEGER})
<selectKey resultType="long" keyProperty="risktgid">
SELECT @@IDENTITY AS RISKTGID
</selectKey>
</insert>
<insert id="insertSelective" parameterType="com.vimtech.bms.business.riskprojectapproval.domain.RiskProjectApproval" >
insert into WF_RISK_PROJECT_APPROVAL
<trim prefix="(" suffix=")" suffixOverrides="," >
<if test="risktgid != null" >
RISKTGID,
</if>
<if test="projid != null" >
PROJID,
</if>
<if test="createdate != null" >
CREATEDATE,
</if>
<if test="updatedate != null" >
UPDATEDATE,
</if>
<if test="status != null" >
STATUS,
</if>
<if test="conclusion != null" >
CONCLUSION,
</if>
<if test="creator != null" >
CREATOR,
</if>
<if test="risktype != null" >
RISKTYPE,
</if>
<if test="applytype != null" >
APPLYTYPE,
</if>
<if test="iscompensatory != null" >
ISCOMPENSATORY,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides="," >
<if test="risktgid != null" >
#{risktgid,jdbcType=NUMERIC},
</if>
<if test="projid != null" >
#{projid,jdbcType=NUMERIC},
</if>
<if test="createdate != null" >
#{createdate,jdbcType=TIMESTAMP},
</if>
<if test="updatedate != null" >
#{updatedate,jdbcType=TIMESTAMP},
</if>
<if test="status != null" >
#{status,jdbcType=INTEGER},
</if>
<if test="conclusion != null" >
#{conclusion,jdbcType=VARCHAR},
</if>
<if test="creator != null" >
#{creator,jdbcType=VARCHAR},
</if>
<if test="risktype != null" >
#{risktype,jdbcType=INTEGER},
</if>
<if test="applytype != null" >
#{applytype,jdbcType=INTEGER},
</if>
<if test="iscompensatory != null" >
#{iscompensatory,jdbcType=INTEGER},
</if>
</trim>
<selectKey resultType="long" keyProperty="risktgid">
SELECT @@IDENTITY AS RISKTGID
</selectKey>
</insert>
如上中的selectKey中的写法即可,然后就可以在action中使用了
mybatis插入值的时候返回对象的主键值的更多相关文章
- mybatis插入操作时,返回自增主键id
mapper.xml 代码 <insert id="insert" parameterType="com.Student" > <select ...
- mybatis oracle insert 返回新增的主键值
<insert id="insertVmsTemplatePlayItem" parameterType="VmsTemplatePlayItem"> ...
- mybatis 插入数据 在没有commit时 获取主键id
<insert id="insert" parameterType="Mail" useGeneratedKeys="true" ...
- mybatis 设置新增数据后返回自增主键
主要是注解@Options起作用,语句如下: @Insert({ "INSERT INTO application_open_up ( " + "app_open_hos ...
- sql server 获取自增列下一个值或者获取指定表的主键值
IDENT_CURRENT('TableName')为当前的最大标识值, IDENT_INCR('TableName')为设置的标识值增量, 两者相加即为下一个标识值 如: SELECT IDENT_ ...
- Mybatis useGeneratedKeys 填充自增主键值(使用Mysql)的原理分析
一.Mybatis配置 <insert id="insert" parameterType="com.test.TestDO" keyProperty=& ...
- 转mybatis返回自增主键,亲测
重点是获取对象的主键值而不是insert的返回值 Mybatis获取插入数据的主键时,返回值总是1xml里的写法 第一种方式 <insert id="insertLogin" ...
- 杜绝网上压根没测过就乱写之 《oracle mybatis 返回自增主键 》
面试过好多人,包括自己也属于这么一个情况: 遇到问题直接去网上查,一般都可以查到解决方案.其中也包括一些基本的面试资料的答案. 其实有很多答案也都是正确的,但是还是存在一些压根就是胡乱抄来的答案,也不 ...
- JDBC学习笔记(6)——获取自动生成的主键值&处理Blob&数据库事务处理
获取数据库自动生成的主键 [孤立的技术是没有价值的],我们这里只是为了了解具体的实现步骤:我们在插入数据的时候,经常会需要获取我们插入的这一行数据对应的主键值. 具体的代码实现: /** * 获取数据 ...
随机推荐
- python第一天(安装运行python)
1. 安装Python 3.7 目前,Python有两个版本,一个是2.x版,一个是3.x版,这两个版本是不兼容的.由于3.x版越来越普及,我们的教程将以最新的Python 3.7版本为基础.请确保你 ...
- LeetCode 3——无重复字符的最长子串
1. 题目 2. 解答 2.1. 方法一 我们从前往后遍历字符串,start 代表最长子串的起始位置,一开始设置为零. 如果没有遇到重复字符,则更新子串的长度,向后遍历. 如果遇到重复字符时,则更新字 ...
- VC++之运算符重载简单小结
封装继承和多态是面向对象三大基本支柱.在面向对象系统中有两种编译方式:静态联编和动态联编静态联编:也叫早期联编:指系统在编译时就决定如何实现某一动作,提供了执行速度快的优点.动态联编:也叫滞后联编:指 ...
- nohup追加日志
背景:用脚本部署Spring Boot应用,用nohup命令进行后台运行 之前的日志处理: nohup command > myout.file 2>&1 & 导致每次用s ...
- BZOJ 2049 SDOI2008 洞穴勘测 LCT板子
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2049 题意概述:给出N个点,一开始不连通,M次操作,删边加边,保证图是一个森林,询问两点连 ...
- epc笔记
http://wenku.baidu.com/view/5e921520dd36a32d7375812a.html 1. 先注册, EPC注册EPS业务或non-EPS服务 ?? HSS做什么? 2 ...
- C++中getline()函数简介
有时我们希望能在最终得到的字符中保留输入时的空白符,这时应该用getline()函数代替原来的>>运算符. 下面是使用getline读取一整行的示例代码: #include<iost ...
- coredump分析
首先通过命令 gdb freeswitch core.60954进入gdb. 这里freeswitch 是产生coredump的可执行应用,core.60954是应用产生的coredump文件. 然后 ...
- JavaScript constructor 属性详解
对象的constructor属性用于返回创建该对象的函数,也就是我们常说的构造函数. 在JavaScript中,每个具有原型的对象都会自动获得constructor属性.除了arguments.Enu ...
- Object empty value key filter
Object empty value key filter 过滤空值 Utils emptykeysFilter() "use strict"; /** * * @author x ...