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插入值的时候返回对象的主键值的更多相关文章

  1. mybatis插入操作时,返回自增主键id

    mapper.xml 代码 <insert id="insert" parameterType="com.Student" > <select ...

  2. mybatis oracle insert 返回新增的主键值

    <insert id="insertVmsTemplatePlayItem" parameterType="VmsTemplatePlayItem"> ...

  3. mybatis 插入数据 在没有commit时 获取主键id

      <insert id="insert" parameterType="Mail" useGeneratedKeys="true" ...

  4. mybatis 设置新增数据后返回自增主键

    主要是注解@Options起作用,语句如下: @Insert({ "INSERT INTO application_open_up ( " + "app_open_hos ...

  5. sql server 获取自增列下一个值或者获取指定表的主键值

    IDENT_CURRENT('TableName')为当前的最大标识值, IDENT_INCR('TableName')为设置的标识值增量, 两者相加即为下一个标识值 如: SELECT IDENT_ ...

  6. Mybatis useGeneratedKeys 填充自增主键值(使用Mysql)的原理分析

    一.Mybatis配置 <insert id="insert" parameterType="com.test.TestDO" keyProperty=& ...

  7. 转mybatis返回自增主键,亲测

    重点是获取对象的主键值而不是insert的返回值 Mybatis获取插入数据的主键时,返回值总是1xml里的写法 第一种方式 <insert id="insertLogin" ...

  8. 杜绝网上压根没测过就乱写之 《oracle mybatis 返回自增主键 》

    面试过好多人,包括自己也属于这么一个情况: 遇到问题直接去网上查,一般都可以查到解决方案.其中也包括一些基本的面试资料的答案. 其实有很多答案也都是正确的,但是还是存在一些压根就是胡乱抄来的答案,也不 ...

  9. JDBC学习笔记(6)——获取自动生成的主键值&处理Blob&数据库事务处理

    获取数据库自动生成的主键 [孤立的技术是没有价值的],我们这里只是为了了解具体的实现步骤:我们在插入数据的时候,经常会需要获取我们插入的这一行数据对应的主键值. 具体的代码实现: /** * 获取数据 ...

随机推荐

  1. CentOS环境配置Hadoop(一)

    配置Linux开发环境(hadoop-2.6.4) 一.准备工具 VMware-workstation-10.0.1注册机 CentOS-6.5-x86_64-bin-DVD1 jdk-7u79-li ...

  2. 问题 C: 质因数的个数

    1947: 质因数的个数 时间限制: 1 Sec  内存限制: 32 MB提交: 245  解决: 114[提交][状态][讨论版][命题人:外部导入] 题目描述 求正整数N(N>1)的质因数的 ...

  3. errno -4058 and npm WARN enoent ENOENT 解决方案

    1.报错如下: npm WARN checkPermissions Missing write access to C:\Users\hejinrong\AppData\Roaming\npm\nod ...

  4. SPOJ 3978 Distance Query(tarjan求LCA)

    The traffic network in a country consists of N cities (labeled with integers from 1 to N) and N-1 ro ...

  5. java-2018-01-17计划

    1.一句英语 包括单词 2.一个java版本的设计模式 参考:https://github.com/iluwatar/java-design-patterns 学习了抽象工厂模式 总结:java的RS ...

  6. 微信小程序小程序使用scroll-view不能使用下拉刷新的解决办法

    <scroll-view class="movie-grid-container" scroll-y="true" scroll-x="fals ...

  7. Currying & 柯里化

    Currying & 柯里化 函数式编程 https://www.cnblogs.com/xgqfrms/p/5730527.html https://en.wikipedia.org/wik ...

  8. [BZOJ5417] [NOI2018]你的名字

    Description 小A 被选为了ION2018 的出题人,他精心准备了一道质量十分高的题目,且已经把除了题目命名以外的工作都做好了. 由于ION 已经举办了很多届,所以在题目命名上也是有规定的, ...

  9. [LOJ #2538][PKUWC 2018]Slay the Spire

    题目大意:一开始有 $2n$ 张牌,每张牌上都写着一个数字 $w_i$,有两种的牌,每种类型各 $n$ 张: 1.攻击牌:打出后对对方造成牌上的数字的伤害. 2.强化牌:打出后,设数字为 $x$,则其 ...

  10. [NOI.AC省选模拟赛3.30] Mas的童年 [二进制乱搞]

    题面 传送门 思路 这题其实蛮好想的......就是我考试的时候zz了,一直没有想到标记过的可以不再标记,总复杂度是$O(n)$ 首先我们求个前缀和,那么$ans_i=max(pre[j]+pre[i ...