在异常期间,Mybatis批量插入无法插入所有记录

时间:2016-03-10 14:52:11

标签: java spring-batch mybatis bulkinsert spring-mybatis

我正在尝试使用mybatis作为批处理操作(在mapper xml中使用sqlsessionTemplate&amp; <foreach>标记中的ExecutorType.Batch)将1000条记录插入到表(Oracle DB)中。 在执行要插入的映射器函数时,如果其间存在任何错误,则会完全回滚,跳过剩余的批量插入过程。
我们的要求是记录错误中的记录错误,并继续插入剩余记录 mybatis批量插入中是否有任何可能/选项可用于实现此目的。

mapper XML中使用的示例查询:

<insert id="addSampleBatch" parameterType='java.util.Map'>
   INSERT ALL
   <foreach collection="sampleList" item="vehicle">
   INTO
     vehicle
            (id,name) 
   VALUES
      (#{vehicle.id}, 
       #{vehicle.name} )
   </foreach>
   SELECT * FROM dual
</insert> 

myBatis版本:3.2.8
mybatis-spring jar版本:1.2.2

0 个答案:

没有答案