mybatis批量插入数据三种方式:

1.代码for 循环,每次插入一条数据
2.动态拼接sql , insert into () values ()();
3.使用mybatis 的BatchExecutor;
测试数量5w条;
方案1: new 5w 个对象放入list;然后for 循环插入 耗时大概23s
方案2: new1k 个对象放入一个list, 然后list 放入map; 一共new 5w 对象; for 循环map ,递归循环list, 耗时2.3s
方案3: new 5w 对象, 放入list; for循环集合; 使用BatchExecutor插入对象 耗时8.3s
经过对比: 方案一耗时最多;
方案2:速度最快, 缺点是需要把握每次插入的调试, 默认传入参数长度是1M; 不过这个值可以设置
方案三: 速度适中,缺点是在事物没有提交前是获取不到插入数据返回的主键的

mybatis处理批量数据插入怎么处理效率最高相关推荐

  1. MyBatis Plus 批量数据插入功能,yyds!

    作者 | 王磊 来源 | Java中文社群(ID:javacn666) 转载请联系授权(微信ID:GG_Stone 最近 Review 小伙伴代码的时候,发现了一个小小的问题,小伙伴竟然在 for 循 ...

  2. excel 复制数据 sql server 粘贴_一个Excel妙招,一个SQL技巧,解决批量数据插入问题

    #Excel技巧# #数据库# #MySQL# 业务背景 不知道您在工作中有没有遇到过这样几种情况: 业务定期给你一批数据结构相同的名单或者数据,要求你插入到库里并进行处理. 机器学习指标加工时,一个 ...

  3. mysql 批量数据插入很慢(kettle 输入输出组件) 性能优化办法

    背景 最近在做数仓重构项目,遇到一些性能瓶颈,这里记录一下解决办法. 随着业务数据每天都在增加,几年前开发的etl任务开始跑不动了.大表一般是通过增量的方式插入,但是修复bug 或者每月/季度跑一次的 ...

  4. jdbc批量插入的4种方式【百万条数据插入只需几秒】

    mysql数据库准备 #打开数据库test01; use test01; #创建表a,表a包含int型的id列.可变长度型的name[长度20个字符] create table a (id INT,N ...

  5. mysql插入多行数据来自另一张表_mysql从一张表查询批量数据并插入到另一表中的完整实例...

    说在前面 nodejs 读取数据库是一个异步操作,所以在数据库还未读取到数据之前,就会继续往下执行代码. 最近写东西时,需要对数据库进行批量数据的查询后,insert到另一表中. 说到批量操作,让人最 ...

  6. mybatis批量更新数据三种方法效率对比

    探讨批量更新数据三种写法的效率问题. 实现方式有三种, 1> 用for循环通过循环传过来的参数集合,循环出N条sql,需要在db链接url后面带一个参数  &allowMultiQuer ...

  7. MySQL 批量插入,如何不插入重复数据?根据条件 MyBatis不插入重复数据

    目录 前言 解决方案 1.insert ignore into 2.on duplicate key update 3.insert - select - where not exist 4.repl ...

  8. list mybatis批量保存_mybatis 批量将list数据插入到数据库的实现

    随着业务需要,有时我们需要将数据批量添加到数据库,mybatis提供了将list集合循环添加到数据库的方法.具体实现代码如下: 1.mapper层中创建 insertForeach(List < ...

  9. mybatis 批量将list数据插入到数据库

    mybatis 批量将list数据插入到数据库 <select id="selectExistsLightName" parameterType="java.uti ...

  10. Java通过Mybatis实现批量插入数据到Oracle中

    最近项目中遇到一个问题:导入数据到后台并将数据插入到数据库中,导入的数据量有上万条数据,考虑采用批量插入数据的方式: 结合网上资料,写了个小demo,文章末尾附上demo下载地址 1.新建项目:项目目 ...

最新文章

  1. php可以打印一个页面,利用html实现分页打印功能的实例详解
  2. Microbiome:植物根际微生物组也有昼夜节律
  3. Maxout激活函数
  4. (二)、MariaDB、Apache软件安装
  5. java中的构造方法,this、super的用法
  6. 计算机网络教学方式探讨论文,学生老师论文,关于关于高中计算机网络教学效率提升相关参考文献资料-免费论文范文...
  7. MSSQL → 02:数据库结构
  8. mysql-proxy数据库中间件架构
  9. 这是一段有毒的js代码,求大神解释!!!
  10. 如何关闭文件服务器的同步,文件服务器同步
  11. vue-router总结2
  12. 虚拟机自动安装linux操作系统(kickstart+pxe+dhcp+tftp)
  13. DDD领域驱动设计详解
  14. 都9012年了!假借区块链敛财骗局仍一桩接一桩
  15. 在夜神模拟器内部安装App
  16. 深度学习图像处理目标检测图像分割计算机视觉 02--图像特征与描述
  17. 李文胜oracle,2014年下期解放学校防火演练方案.doc
  18. java报错--java.io.IOException: Server returned HTTP response code: 502
  19. STM32配置单片机系统时钟(转)
  20. remoteapp提示找不到远程计算机_知乎高赞:985 计算机视觉毕业后找不到工作怎么办?怒刷 leetcode,还是另寻他路?...

热门文章

  1. 计算机绘图CAD实训指导,【精品】CAD计算机绘图实习指导书
  2. poj2112,最大流,最优挤奶方案
  3. 密码生成器(字母+数字+特殊字符)
  4. html怎么链接scc,htmlscc基础知识
  5. 免安装mysql_免安装版的Mysql
  6. 每日一坑:Github配置ssh后,拉代码依旧需要鉴权,且鉴权失败。
  7. 自己写了一个小小的双色球号码随机生成器
  8. kettle同步数据 (SAP hana到 Mysql)
  9. 平面波超声成像 (Matlab Filed II仿真)
  10. 【学习点滴】游戏后台开发-tx