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. java long值转成时间格式

    /** * 将long值转换为以小时计算的格式 * @param mss * @return */ public static String formatLongTime(long mss) { St ...

  2. lock关键字的使用

    最近在代码中,发现别人使用了lock关键字,为了理解别人写的代码,所以自己对lock关键字的使用研究了下. 微软官方解释,请百度:lock 语句(C# 参考) 微软给了个官网实例代码: class A ...

  3. Linux TCP协议使用的变量

    Linux /proc/sys/net/ipv4/* 变量 TCP变量:somaxconn - INTEGER    listen()的backlog参数的上限,在用户态为SOMAXCONN.默认是1 ...

  4. (转) linux I/O优化 磁盘读写参数设置

    关于页面缓存的信息,可以用cat /proc/meminfo 看到.其中的Cached 指用于pagecache的内存大小(diskcache-SwapCache).随着写入缓存页,Dirty 的值会 ...

  5. 使用 window.getSelection() 方法获取鼠标划取部分的起始位置和结束位置的问题(高亮后不能正确获取)

    如果没有高亮等复杂处理,只需要获取一段文字中选取的字和位置,那么 使用window.getSelection()获取div中选中文字内容及位置 怎么获取textarea中选中文字 则可以满足需求: - ...

  6. Action中使用Json

    1.前台页面中的ajax: //根据部门查询该部门下的用户列表 function doSelectDept(){ //1.获取部门 var dept = $("#toCompDept opt ...

  7. oracle序列使用时 先用伪列将序列的id调整到正确的位置

  8. 【bzoj4516】[Sdoi2016]生成魔咒 后缀数组+倍增RMQ+STL-set

    题目描述 魔咒串由许多魔咒字符组成,魔咒字符可以用数字表示.例如可以将魔咒字符 1.2 拼凑起来形成一个魔咒串 [1,2].一个魔咒串 S 的非空字串被称为魔咒串 S 的生成魔咒. 例如 S=[1,2 ...

  9. NotifyIcon控件

    NotifyIcon就是系统托盘控件.通知区域中的图标是一些进程的快捷方式,这些进程在计算机后台运行,如防病毒程序或音量控制.这些进程不会具有自己的用户界面.NotifyIcon 类提供了编写此功能的 ...

  10. c# IList<T> 深拷贝

    class A { public string a1{get;set}; public string a2{get;set}; public IList<B> a3{get;set}; / ...