批量插入数据经常是把一个集合的数据一次性插入数据库,只需要执行一次sql语句,但是批量插入通常会报框架版本号的错误,本人就遇到 com.alipay.zdal.parser.exceptions.a: ERROR ## get sqlparser result from cache has an error:的错误,

项目使用的是支付宝的zdal分表分库中间键配置,出现了很奇葩的错误时间紧也没找到引起的真正原因

所以就找来了另外一种方法:把list放到map集合里面的方法批量插入

<insert id="insertMore"
parameterType="java.util.Map">
insert into account_si_income_info
(user_card_no,user_id,user_name,mobile,medical_card_no,city_no,template_id,template_version,req_msg_id,pay_cost_month,si_type,pay_cost_base,pay_cost_total,pay_cost_person,pay_cost_unit,
account_person,arrive_flag,extend_params,create_time,update_time,collection_type,notified,service_return_url,pid,target_notify_time)
values
<foreach collection="list" item="item" separator =",">
(#{item.userCardNo,jdbcType=VARCHAR},
#{item.userId,jdbcType=VARCHAR},
#{item.userName,jdbcType=VARCHAR},
#{item.mobile,jdbcType=VARCHAR},
#{item.medicalCardNo,jdbcType=VARCHAR},
#{item.cityNo,jdbcType=VARCHAR},
#{item.templateId,jdbcType=VARCHAR},
#{item.templateVersion,jdbcType=VARCHAR},
#{item.reqMsgId,jdbcType=VARCHAR},
#{item.payCostMonth,jdbcType=VARCHAR},
#{item.siType,jdbcType=VARCHAR},
#{item.payCostBase,jdbcType=DECIMAL},
#{item.payCostTotal,jdbcType=DECIMAL},
#{item.payCostPerson,jdbcType=DECIMAL},
#{item.payCostUnit,jdbcType=DECIMAL},
#{item.accountPerson,jdbcType=DECIMAL},
#{item.arriveFlag,jdbcType=VARCHAR},
#{item.extendParams,jdbcType=VARCHAR},
#{item.createTime,jdbcType=TIMESTAMP},
#{item.updateTime,jdbcType=TIMESTAMP},
#{item.collectionType,jdbcType=VARCHAR},
#{item.notified,jdbcType=VARCHAR},
#{item.serviceReturnUrl,jdbcType=VARCHAR},
#{item.pid,jdbcType=VARCHAR},
#{item.target_notify_time,jdbcType=VARCHAR})
</foreach>
</insert>

mybatis批量插入的方式的更多相关文章

  1. MyBatis批量插入性能及问题

    1.mybatis三种批量插入方式对比 2.Mybatis与JDBC批量插入MySQL数据库性能测试及解决方案 3.Mybatis批量插入引发的血案 4.Oracle批量插入数据SQL语句太长出错

  2. mybatis批量插入数据到oracle

    mybatis 批量插入数据到oracle报 ”java.sql.SQLException: ORA-00933: SQL 命令未正确结束“  错误解决方法 oracle批量插入使用 insert a ...

  3. springMVC 接收数组参数,mybatis 接收数组参数,mybatis批量插入/批量删除案例

    案例是给一个用户赋予多个权限,多个权限用其对应的主键 id 为参数,组成了 一个id数组,传给springMVC,然后springMVC传给mybatis,然后mybatis批量插入.其实类似的场景还 ...

  4. Oracle 逐条和批量插入数据方式对比

    创建测试表 create table base_users ( userid         varchar2(16), username  varchar2(32), passwd      var ...

  5. 解决Oracle+Mybatis批量插入报错:SQL 命令未正确结束

    Mybatis批量插入需要foreach元素.foreach元素有以下主要属性: (1)item:集合中每一个元素进行迭代时的别名. (2)index:指定一个名字,用于表示在迭代过程中,每次迭代到的 ...

  6. 160421、MyBatis批量插入数据

    在程序中封装了一个List集合对象,然后需要把该集合中的实体插入到数据库中,由于项目使用了Spring+MyBatis的配置,所以打算使用MyBatis批量插入,由于之前没用过批量插入,在网上找了一些 ...

  7. MyBatis批量插入数据(MySql)

    由于项目需要生成多条数据,并保存到数据库当中,在程序中封装了一个List集合对象,然后需要把该集合中的实体插入到数据库中,项目使用了Spring+MyBatis,所以打算使用MyBatis批量插入,应 ...

  8. mybatis批量插入oracle时报错:unique constraint (table name) violated

    mybatis批量插入oracle时报错:unique constraint (table name) violated,是因为插入的集合中有两条相同唯一约束的数据.

  9. Mybatis 批量插入数据

    --mybatis 批量插入数据 --1.Oracle(需要测试下是否支持MySQL) < insert id ="insertBatch" parameterType=&q ...

随机推荐

  1. (转)Paper list of Meta Learning/ Learning to Learn/ One Shot Learning/ Lifelong Learning

    Meta Learning/ Learning to Learn/ One Shot Learning/ Lifelong Learning 2018-08-03 19:16:56 本文转自:http ...

  2. Entity Framework Core

    Entity Framework是一种支持 .NET 开发人员使用 .NET 对象处理数据库的对象关系映射程序 (O/RM). 它不要求提供开发人员通常需要编写的大部分数据访问代码. Entity F ...

  3. jquery.validate使用详解

    一.简单应用实例: 1.用class样式进行验证,用法简单,但不能自定义错误信息,只能修改jquery-1.4.1.min.js中的内置消息,也不支持高级验证规则. <script type=& ...

  4. 18. --plic--=--ply--=--pli--=--ple--=--plex--=--plo-- to fold 倍,重,折叠 (词19、20)

    词汇速记20

  5. Mac python 2.X 升级到 3.X

    Mac OS X10.9默认带了Python2.7,不过现在Python3.3.3出来了,如果想使用最新版本,赶紧升级下吧.基本步骤如下. 第1步:下载Python3.3 下载地址如下: Python ...

  6. 每日质量NPM包复制_copy-to-clipboard

    一.copy-to-clipboard 官方定义: Simple module exposing copy function 理解: 一个超级简单的复制功能,并且这种方法适用于通过别的事件触发复制功能 ...

  7. python 协程 demo

    # -*- coding: UTF- -*- import gevent from gevent import socket from gevent import event rev=socket.s ...

  8. python函数的动态传参.作用域与命名空间

    一.动态传参1.*表示动态传参. 可以接受所有的位置参数传参的时候自动的把实参打包成元组 交给形参 def chi(*food): print(food) chi() # 动态传参可以不传参数 chi ...

  9. StringBuffer 清空StringBuffer的实例的三种方法

    @Test public void testStringbuffer(){ //StringBuffer类没有clear方法,不过可以通过下面两种方法来清空一个StringBuffer的实例: Str ...

  10. ZZNU 正约数之和 2094

    #include<iostream> #include<cstring> #include<queue> #include<cstdio> #inclu ...