直接贴代码,主要运用

List<E> subList(int fromIndex, int toIndex); 把 List 分割
   /**
* 保存批价结果
*
* @param priceResult 批价结果
* @throws Exception 异常
*/
private void savePriceResult(List<AmountPo> priceResult) throws Exception {
if (CheckUtils.isNotEmpty(priceResult)) {
       //很大的一个list 比如:20W条数据
int size = priceResult.size();
int startIndex = 0;
       //每批入库list大小 比如:5000条一批
int endIndex = (int) MAX_SIZE;
       //定义临时list
List<AmountPo> amountPos;
//分批入库
while (true) {
endIndex = endIndex > size ? size : endIndex;
          //list.subList 分割成小的list
amountPos = priceResult.subList(startIndex, endIndex);
if (amountPos.size() == MAX_SIZE) {
            //执行入库操作
amountDao.batchAdd(amountPos);
} else {
//最后一批入库数据
if (CheckUtils.isNotEmpty(amountPos)) {
amountDao.batchAdd(amountPos);
}
break;
}
startIndex = endIndex;
endIndex = (int) (startIndex + MAX_SIZE);
}
} }

List 数据分批入库的更多相关文章

  1. HBase 写优化之 BulkLoad 实现数据快速入库

    在第一次建立Hbase表的时候,我们可能需要往里面一次性导入大量的初始化数据.我们很自然地想到将数据一条条插入到Hbase中,或者通过MR方式等.但是这些方式不是慢就是在导入的过程的占用Region资 ...

  2. 【hbase】——HBase 写优化之 BulkLoad 实现数据快速入库

    1.为何要 BulkLoad 导入?传统的 HTableOutputFormat 写 HBase 有什么问题? 我们先看下 HBase 的写流程: 通常 MapReduce 在写HBase时使用的是 ...

  3. Spring Boot与Mybatis 借助Fastjson快速完成数据解析入库

    通过Spring Boot可以快速搭建一个项目结构,在此基础上本文就通过一个简单的例子,说明如何结合Mybatis 和 Fastjson,快速的完成一个数据的入库基本操作. 添加相关的依赖 <d ...

  4. Android数据分批载入-滑动究竟部自己主动载入列表

    Android数据分批载入-滑动究竟部自己主动载入列表 2014年5月9日 摘自:<Android高级开发实战-ui.ndk与安全> 本博文介绍怎样进行数据分批载入,在应用开发其中会常常使 ...

  5. Mongoose使用案例--让JSON数据直接入库MongoDB

    目录 1.准备工作. 2.配置Mongoose. 3.创建目录及文件. 4.插入数据,POST提交JSON增加一条记录. 5.查询数据,取出你插入数据库的记录. 一.准备工作 使用Express4创建 ...

  6. EF架构~数据分批批量提交

    回到目录 对于大数据量提交,包括插入,更新和删除,我始终不建议用EF自带的方法,因为它会增加与数据库的交互次数,一般地,EF的一个上下文在提交时会打开一个数据连接,然后把转换成的SQL语句一条一条的发 ...

  7. PDO处理大批量数据的入库

    <?php //最东端 东经135度2分30秒 //最西端 东经73度40分 //最南端 北纬3度52分 //最北端 北纬53度33分 //转换为度的单位$dbName = 'txhl';//数 ...

  8. NPOI大数据分批写入同个Excel

    实现过程: 要导出来的数据库数据量很大,一次取出来压力有点大,故分批取出来,导入到同一个Excel. 因为Excel2003版最大行数是65536行,Excel2007开始的版本最大行数是104857 ...

  9. JAVA大集合数据分批次进行切割处理

    今天遇到一个大集合里面的数据删除问题, 因为是一个大集合,如果同时传递到数据库,那么就会造成数据库压力 所以分批次的进行批量操作 其实 也可以采用多线程来处理或者多批次加多线程来处理都是可以的 下面的 ...

随机推荐

  1. H3C RIP配置

    一.RIP简介 RIP(Routing Information Protocol,路由信息协议)是一种较为简单的内部网关协议(Interior Gateway Protocol,IGP),主要用于规模 ...

  2. 解决pjax重复加载js导致事件重复绑定的问题

    个人博客 地址:http://www.wenhaofan.com/article/20180925232057 1.所有js统一在pjax容器外引入 在pjax容器外引入的js只会被引入一次,所以不会 ...

  3. c语言 printf格式化输出

    #include <iostream> #include<stdio.h> #include <cstring> using namespace std; int ...

  4. Python 序列化与反序列化

    序列化是为了将内存中的字典.列表.集合以及各种对象,保存到一个文件中(字节流).而反序列化是将字节流转化回原始的对象的一个过程. json库 序列化:json.dumps() 反序列化:json.lo ...

  5. ASP.NET MVC4中对JS和CSS的引用

    https://www.cnblogs.com/madyina/p/3702314.html ASP.NET MVC4中对JS和CSS的引用又做了一次变化,在MVC3中我们这样引用资源文件: < ...

  6. SaltStack之return与job管理

    目录 1. SaltStack组件之return 1.1 return流程 1.2 使用mysql作为return存储方式 2. job cache 2.1 job cache流程 2.2 job管理 ...

  7. [P4549] 【模板】裴蜀定理 - GCD

    __gcd真好用 #include <bits/stdc++.h> using namespace std; int main() { int n,x,a=0; cin>>n; ...

  8. 在 linux 上运行 oracle sql脚本

    方法一 su - oracle  //切换到oracle用户模式下 sqlplus /nolog  //登录sqlplus connect /as sysdba; //连接orcale @sql脚本路 ...

  9. Mybaits的中的对象映射(包含仅有基本数据类型的属性的和对象类型的属性的)

    转:https://blog.csdn.net/cjt20100/article/details/46547617. 1 constructor – 用来将结果反射给一个实例化好的类的构造器    a ...

  10. JSON解析及数据库操作实战篇

    代码: JSONObject json = JSONObject.parseObject(ubody);//得到整个json JSONObject AutoTable=json.getJSONObje ...