POI操作大数据量Excel时,new SXSSFWorkbook(1000)实例化失败问题解决

本文主要是介绍POI操作大数据量Excel时,new SXSSFWorkbook(1000)实例化失败问题解决,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

项目上使用POI导出数据库大数据量为Excel时,发现代码运行时 实例化工作簿 失败!

SXSSFWorkbook workbook = new SXSSFWorkbook(100);

trycatch问题代码后,在debug中也并未进入异常处理,而是直接进入了finally

最后发现问题所在:缺少SXSSF所依赖的操作xml的相关jar包!

 Apache POI操作Excel对象 
 1:HSSF:操作Excel 2007之前版本(.xls)格式,xls格式的excel(最大行数65536行,最大列数256列) 
 2:XSSF:操作Excel 2007及之后版本(.xlsx)格式,.xlsx格式的excel(最大行数1048576行,最大列数16384列)
 3:SXSSF:从POI3.8 beta3开始支持,基于XSSF,当数据量过大导致内存占用大于实例化时设定的初始值时,会将数据持久化到硬盘,从而避免出现内存溢出问题。

使用SXSSF实现大数据量的excel导出,导出的文件为.xlsx格式(2007)的excel,而.xlsx是用新的基于XML的压缩文件格式取代了原.xls(2003)专有的默认文件格式,使其占用空间更小,可以向下兼容xls。

所以,不光要导入poi的SXSSF相关的jar包,而且还要导入SXSSF所依赖的操作xml的jar包!

    1:poi-3.10-FINAL-20140208.jar
    2:poi-ooxml-3.10-FINAL-20140208.jar
    3:poi-ooxml-schemas-3.10-FINAL-20140208.jar
    4:dom4j-1.6.1.jar
    5:xmlbeans-2.3.0.jar

关于使用POI导出大数据量Excel的实现,请看我之前的一篇博文(代码注释详细工整,并附有源码下载):

基于Apache POI导出大数据量Excel的实现


这篇关于POI操作大数据量Excel时,new SXSSFWorkbook(1000)实例化失败问题解决的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/307219

相关文章

springboot循环依赖问题案例代码及解决办法

《springboot循环依赖问题案例代码及解决办法》在SpringBoot中,如果两个或多个Bean之间存在循环依赖(即BeanA依赖BeanB,而BeanB又依赖BeanA),会导致Spring的... 目录1. 什么是循环依赖?2. 循环依赖的场景案例3. 解决循环依赖的常见方法方法 1:使用 @La

C#使用SQLite进行大数据量高效处理的代码示例

《C#使用SQLite进行大数据量高效处理的代码示例》在软件开发中,高效处理大数据量是一个常见且具有挑战性的任务,SQLite因其零配置、嵌入式、跨平台的特性,成为许多开发者的首选数据库,本文将深入探... 目录前言准备工作数据实体核心技术批量插入:从乌龟到猎豹的蜕变分页查询:加载百万数据异步处理:拒绝界面

Mysql表的简单操作(基本技能)

《Mysql表的简单操作(基本技能)》在数据库中,表的操作主要包括表的创建、查看、修改、删除等,了解如何操作这些表是数据库管理和开发的基本技能,本文给大家介绍Mysql表的简单操作,感兴趣的朋友一起看... 目录3.1 创建表 3.2 查看表结构3.3 修改表3.4 实践案例:修改表在数据库中,表的操作主要

C# WinForms存储过程操作数据库的实例讲解

《C#WinForms存储过程操作数据库的实例讲解》:本文主要介绍C#WinForms存储过程操作数据库的实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、存储过程基础二、C# 调用流程1. 数据库连接配置2. 执行存储过程(增删改)3. 查询数据三、事务处

Java使用Curator进行ZooKeeper操作的详细教程

《Java使用Curator进行ZooKeeper操作的详细教程》ApacheCurator是一个基于ZooKeeper的Java客户端库,它极大地简化了使用ZooKeeper的开发工作,在分布式系统... 目录1、简述2、核心功能2.1 CuratorFramework2.2 Recipes3、示例实践3

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4

springboot security验证码的登录实例

《springbootsecurity验证码的登录实例》:本文主要介绍springbootsecurity验证码的登录实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录前言代码示例引入依赖定义验证码生成器定义获取验证码及认证接口测试获取验证码登录总结前言在spring

java中使用POI生成Excel并导出过程

《java中使用POI生成Excel并导出过程》:本文主要介绍java中使用POI生成Excel并导出过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录需求说明及实现方式需求完成通用代码版本1版本2结果展示type参数为atype参数为b总结注:本文章中代码均为

Spring事务中@Transactional注解不生效的原因分析与解决

《Spring事务中@Transactional注解不生效的原因分析与解决》在Spring框架中,@Transactional注解是管理数据库事务的核心方式,本文将深入分析事务自调用的底层原理,解释为... 目录1. 引言2. 事务自调用问题重现2.1 示例代码2.2 问题现象3. 为什么事务自调用会失效3

mysql出现ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘localhost‘ (10061)的解决方法

《mysql出现ERROR2003(HY000):Can‘tconnecttoMySQLserveron‘localhost‘(10061)的解决方法》本文主要介绍了mysql出现... 目录前言:第一步:第二步:第三步:总结:前言:当你想通过命令窗口想打开mysql时候发现提http://www.cpp