mybatis批量插入的方式
批量插入数据经常是把一个集合的数据一次性插入数据库,只需要执行一次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批量插入的方式的更多相关文章
- MyBatis批量插入性能及问题
1.mybatis三种批量插入方式对比 2.Mybatis与JDBC批量插入MySQL数据库性能测试及解决方案 3.Mybatis批量插入引发的血案 4.Oracle批量插入数据SQL语句太长出错
- mybatis批量插入数据到oracle
mybatis 批量插入数据到oracle报 ”java.sql.SQLException: ORA-00933: SQL 命令未正确结束“ 错误解决方法 oracle批量插入使用 insert a ...
- springMVC 接收数组参数,mybatis 接收数组参数,mybatis批量插入/批量删除案例
案例是给一个用户赋予多个权限,多个权限用其对应的主键 id 为参数,组成了 一个id数组,传给springMVC,然后springMVC传给mybatis,然后mybatis批量插入.其实类似的场景还 ...
- Oracle 逐条和批量插入数据方式对比
创建测试表 create table base_users ( userid varchar2(16), username varchar2(32), passwd var ...
- 解决Oracle+Mybatis批量插入报错:SQL 命令未正确结束
Mybatis批量插入需要foreach元素.foreach元素有以下主要属性: (1)item:集合中每一个元素进行迭代时的别名. (2)index:指定一个名字,用于表示在迭代过程中,每次迭代到的 ...
- 160421、MyBatis批量插入数据
在程序中封装了一个List集合对象,然后需要把该集合中的实体插入到数据库中,由于项目使用了Spring+MyBatis的配置,所以打算使用MyBatis批量插入,由于之前没用过批量插入,在网上找了一些 ...
- MyBatis批量插入数据(MySql)
由于项目需要生成多条数据,并保存到数据库当中,在程序中封装了一个List集合对象,然后需要把该集合中的实体插入到数据库中,项目使用了Spring+MyBatis,所以打算使用MyBatis批量插入,应 ...
- mybatis批量插入oracle时报错:unique constraint (table name) violated
mybatis批量插入oracle时报错:unique constraint (table name) violated,是因为插入的集合中有两条相同唯一约束的数据.
- Mybatis 批量插入数据
--mybatis 批量插入数据 --1.Oracle(需要测试下是否支持MySQL) < insert id ="insertBatch" parameterType=&q ...
随机推荐
- HIHOcoder 1449 后缀自动机三·重复旋律6
思路 显然endpos的大小就对应了对应子串的出现次数,所以快速求出endpos的大小,然后用它更新对应子串长度(minlen[i]~maxlen[i])的答案即可 endpos的大小可以拓扑排序求出 ...
- Tutorial: Implementation of Siamese Network on Caffe, Torch, Tensorflow
Tutorial: Implementation of Siamese Network with Caffe, Theano, PyTorch, Tensorflow Updated on 2018 ...
- 使用TestServer测试ASP.NET Core API
今儿给大家分享下,在ASP.NET Core下使用TestServer进行集成测试,这意味着你可以在没有IIS服务器或任何外部事物的情况下测试完整的Web应用程序.下面给出示例: public Sta ...
- 3、iptables扩展及使用
iptables/netfilter netfilter: kernel framework,位于内核中的协议框架 iptables 是规则管理命令行工具 四表:filter, nat, mangl ...
- Java转义形如nbsp;的HTML编码
需要引用一个maven <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 --> <d ...
- kotlin - 空安全
空安全设计的操作符号 操作符 作用 ? 可空操作符,声明该值可为空 ?. 安全调用操作符 b?.length 如果b非空,就返回b.length,否则返回 null !! 非空断言运算符, ...
- display: none; 与 jq show方法之间的联系
1. 定义四种常用隐藏元素的方式,然后调用 jq 的 show 方法显示,观察各原先隐藏元素的 display 表现,结合 jq 源码,show 方法设置 元素 display 属性值为 ...
- docker-compose在dockerfile更新后自动更新image
比如在dockerfile里需要新安装包 形如 加一行 RUN pip3 install XXX 之后,希望docker-compose能更新镜像, 然后启动容器 只需要启动时使用 --build即可 ...
- Corrupted Metadata/failed to mount /sysroot
公司电脑CentOS系统突然断电,开机后,无法进入系统.查看系统log如下: mount: mount /dev/mapper/cl-root on /sysroot failed:Structure ...
- pycharm设置连接github
pycharm与guthub连起来,推送代码会方便一些 教程很多,转发一个:https://www.cnblogs.com/feixuelove1009/p/5955332.html