转载地址http://blog.csdn.net/yys79/article/details/26443603

POI之前的版本不支持大数据量处理,如果数据过多则经常报OOM错误,有时候调整JVM大小效果也不是太好。3.8版本的POI新出来了SXSSFWorkbook,可以支持大数据量的操作,只是SXSSFWorkbook只支持.xlsx格式,不支持.xls格式。

    3.8版本的POI对excel的导出操作,一般只使用HSSFWorkbook以及SXSSFWorkbook,HSSFWorkbook用来处理较少的数据量,SXSSFWorkbook用来处理大数据量以及超大数据量的导出。
   HSSFWorkbook的使用方法和之前的版本的使用方法一致,这里就不在陈述使用方法了
   SXSSFWorkbook的使用例子如下:
import junit.framework.Assert;
import org.apache.poi.ss.usermodel.Cell; 
import org.apache.poi.ss.usermodel.Row; 
import org.apache.poi.ss.usermodel.Sheet; 
import org.apache.poi.ss.usermodel.Workbook; 
import org.apache.poi.ss.util.CellReference; 
import org.apache.poi.xssf.streaming.SXSSFWorkbook;  
public static void main(String[] args) throws Throwable { 
 Workbook wb = new SXSSFWorkbook(100); // keep 100 rows in memory, exceeding rows will be flushed to disk 
 Sheet sh = wb.createSheet(); 
 for(int rownum = 0; rownum < 100000; rownum++){
 Row row = sh.createRow(rownum); 
 for(int cellnum = 0; cellnum < 10; cellnum++){ 
 Cell cell = row.createCell(cellnum); 
 String address = new CellReference(cell).formatAsString(); 
 cell.setCellValue(address); } 
 }
FileOutputStream out = new FileOutputStream("/temp/sxssf.xlsx"); 
 wb.write(out); 
 out.close();
} 
以前还用xml来处理,现在3.8以上就好办了。
原文地址是:http://blog.sina.com.cn/s/blog_68555ee501015xk2.html
apache官网相关内容地址:http://poi.apache.org/spreadsheet/how-to.html#sxssf

POI3.8 导出大数据excel(50万左右)相关推荐

  1. java导出大数据excel表格,导出数据

    常规的java导出excel表格最大的数据量是65535行. package com.sf.module.timeManagement.biz; import java.io.ByteArrayInp ...

  2. POI3.8解决导出大数据量excel文件时内存溢出的问题

    POI3.8解决导出大数据量excel文件时内存溢出的问题 参考文章: (1)POI3.8解决导出大数据量excel文件时内存溢出的问题 (2)https://www.cnblogs.com/feng ...

  3. EasyExcel 低内存导出大数据量的Excel方案探索 50万行 50列 (附:实现代码)

    文章目录 1.前言 2.准备工作 3.导出测试 3.1.单次查询.全量导出 3.2. 多次查询,多个文件,单次写入 3.3.多次查询,多个文件,多次写入 3.4.多线程导出探索 3.5.文件打包成ZI ...

  4. easyexcel导出excel,大数据量100万以内分页查询zip格式导出

    easyexcel导出excel,大数据量100万以内分页查询zip格式导出 准备工作 整体思路 controller层 service层 mapper层 VO 表结构 测试 备注 easyExcel ...

  5. PHP phpspreadsheet 导出大数据 csv excel

    PHP phpspreadsheet 导出大数据 1.composer 安装 phpspreadsheet 这个 composer require phpoffice/phpspreadsheet 2 ...

  6. 2021中国大数据企业50强

    华为技术有限公司 华为成立于1987年,是一家由员工持有全部股份的民营企业,目前有19.4万员工,业务遍及170多个国家和地区,服务 30多亿人口,是全球领先的ICT(信息与通信)基础设施和智能终端提 ...

  7. 字节跳动大数据中心17万服务器硬实力支撑今日头条等产品线(公号回复“字节跳动”下载PDF典型资料,欢迎转发、赞赏支持科普)

    字节跳动大数据中心17万服务器硬实力支撑今日头条等产品线(公号回复"字节跳动"下载PDF典型资料,欢迎转发.赞赏支持科普) 原创: 秦陇纪 科学Sciences 昨天 科学Scie ...

  8. 2021中国大数据企业50强发布,华为云大数据连续六年入选

    7月29日,在2021中国大数据生态产业大会上,由大数据产业生态联盟联合赛迪顾问共同完成的<2021中国大数据产业发展白皮书>正式发布,同时基于白皮书调研结果,组委会权威揭晓"2 ...

  9. 2020中国大数据企业50强

    大数据产业生态联盟.赛迪顾问等机构评选并公布了"2020中国大数据企业50强"榜单.榜单从全国2000余家大数据企业进行筛选,最终评选出50家中国大数据产业的中坚力量.其中华为.阿 ...

最新文章

  1. 干货|全面介绍微软开源可解释机器学习框架InterpretML
  2. Http协议 详解(转载)
  3. Tips/Tricks#0:母版页中对控件ID的处理
  4. 在PLSQL中,存储过程的输出参数(varchar2)最大支持多大
  5. centos安装vsftpd
  6. Linux内核配置系统浅析
  7. Linux如何进行GPIO读写操作的?
  8. Postgresql 直接在查询结果中生成唯一ID
  9. linux下安装telnet服务
  10. ++i 和 i++ 性能上的区别
  11. ubuntu lvs keepalived mysql_ubuntu下LVS + Keepalived 实现mysql高可用负载均衡实现
  12. 20161114课堂笔记
  13. Program Variant Scheduling job
  14. 用户启动计算机并登录win7,win7电脑设置开机登录界面的方法?
  15. linux系统如何启动rpcbind,在Linux系统上关闭rpcbind、postfix、rpc.statd、hpiod服务的方法...
  16. 今天向你们分享一个表白代码(I LOVE YOU)
  17. python记录鼠标和键盘操作并重复_鼠标和键盘操作
  18. R语言绘图--PCA图
  19. 2017GAITC丨朱小燕:人机对话能直接能减少90%人工,极大提升效率
  20. 计算机网络安全漏洞排查报告,网络安全漏洞自查报告.docx

热门文章

  1. 老罗抖音推荐EcoFlow正浩户外电源,小众科技为何被选中?
  2. ipad的服务器是什么系统,ipad cellular版是什么意思 与WLAN版有什么区别
  3. 牛批!Alibaba内部学习指南+最新面试题+学习大纲+内部学习书籍,理论与实战双管齐下!
  4. 关于vscode安装包下载太慢解决方法(详解)
  5. Pepper使用心得
  6. Python并发之协程gevent数据结构和实践(6)
  7. 打包一沓开源的 C/C++ 包管理工具送给你!
  8. PR是什么?怎么查询网站的谷歌PR权重?
  9. 大乐透兑奖规则|规则图
  10. PDF文件的身份证号码