`

用poi 写入大数据量到excel2007,总是报错,“Java heap space”,求解决....

阅读更多
用poi生成excel2007 创建XSSFWorkbook对象
Workbook workbook = new XSSFWorkbook(new FileInputStream(path));
Sheet sheet = workbook .createSheet("这里第一页");
FileOutputStream fos = new FileOutputStream("D://test//test0215.xlsx");
for (int i = 0; i < 100000; i++) {
sheet.createRow(i).createCell(0).setCellValue(1);
}
workbook .write(fos);[size=small]
fos.close();
上面测试例子,写入excel第一列,全为1,写入10w行,超过一定的数据量,比如10w,就会报“Exception in thread "main" java.lang.OutOfMemoryError: Java heap space” ,求解决方案????
分享到:
评论
1 楼 tianyafy 2012-07-19  
try {
Workbook wb = new SXSSFWorkbook(100);
stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
Sheet sh = wb.createSheet();
System.out.println(sh.getSheetName());
while (rs.next()) {
if (sh.getLastRowNum() - sh.getFirstRowNum() > 65433) {
count = 0;
sh = wb.createSheet();
System.out.println(sh.getSheetName());
}
Row row = sh.createRow(count);
for (int cellnum = 1; cellnum <= rs.getMetaData()
.getColumnCount(); cellnum++) {
Cell cell = row.createCell(cellnum - 1);
String value = null;
if (rs.getObject(cellnum) != null) {
value = rs.getObject(cellnum).toString();
}
cell.setCellValue(value);
}
count++;
}
out = new FileOutputStream(file);
wb.write(out);
} catch (Exception e) {
e.printStackTrace();
} finally {
out.close();
DBUtil.release(conn, stmt, rs);
}

相关推荐

    java poi 导入大数据量Excel数据 防止内存溢出处理.zip

    然而,当处理大数据量的Excel文件时,POI可能会导致内存溢出(Out of Memory, OOM),因为默认情况下它会将整个工作簿加载到内存中。为了防止这种问题,我们需要采用优化策略来高效地处理大量数据。 1. **分块读取*...

    使用POI导出大数据量到EXCEL

    "使用POI导出大数据量到EXCEL"这个主题涉及到如何高效地利用POI处理大量数据并将其导出到Excel文件中。以下是对这个主题的详细讲解。 1. **Apache POI简介** Apache POI 是一个开源项目,它提供了Java API来创建、...

    Java读取大数据量Excel的方法(POI)

    在Java编程中,处理大数据量的Excel文件是一项挑战,因为Excel文件可能包含成千上万行数据。Apache POI是一个流行的库,专为处理Microsoft Office文档(如Excel)而设计,它提供了API来读取、写入和修改这些文件。在...

    使用Poi读取大数据量excel的方法

    本篇文章将详细讲解如何利用Apache POI库在Android环境中高效地处理大数据量的Excel文件,无论是2003的.xls格式还是2007及以后的.xlsx格式。 首先,我们需要在项目中引入Apache POI库。如果是Maven项目,可以在pom....

    java poi导出大量数据到Excel

    ### Java POI 大量数据导出到Excel详解 #### 一、背景介绍 在日常工作中,经常需要处理大量的数据并将其导出为Excel文件,特别是在金融、电商等行业。Java POI库作为一款强大的用于读写Microsoft Office文档的Java ...

    利用POI读取excel写入到word

    本篇文章将详细讲解如何利用Apache POI库来读取Excel数据并将其写入到Word文档中。 首先,我们需要了解Apache POI的基本概念。POI提供了一组API,允许程序员在Java应用程序中创建、修改和显示这些文件。对于Excel...

    使用POI将数据写入到EXCEL

    本文将详细讲解如何利用POI将数据写入到Excel文档。 首先,你需要确保已经设置了Maven项目,并在pom.xml文件中添加了Apache POI的依赖。POI的最新版本通常可以在这里找到:...

    poi大量数据读取gc内存溢出解决方案

    poi读取大量数据会造成gc内存溢出的报错,由于垃圾回收机制无法将大量的对象及时的回收,而这些对象又会保存在内存中,会导致内存不够用的情况,这时候我们就需要使用新的方法,读取为cvs即可.此解决方案可支持千万数据的...

    POI实战-java开发excel.rar_Excel写入_JAVA 处理excel_POI_java 写入excel

    POI处理excel文件,主要包括Excel的读取、写入,各种数据格式处理、单元格合并、注释、下拉列表及单元格的边框、背景色、宽度调整等。

    POI实现大数据量的excel文件解析

    标题中的“POI实现大数据量的excel文件解析”是指使用Apache POI库来处理大量数据的Excel文件。Apache POI是Java平台上的一个开源项目,它提供了读取和写入Microsoft Office格式文件的能力,包括Excel(XLS和XLSX)...

    Java解析大数据量Excel,可解析1048576行excel

    在处理大数据量的Excel文件时,Java是一种常用的语言,因为它提供了强大的库,如Apache POI,使得解析大型Excel文件成为可能。Apache POI是Java的一个开源项目,专门用于读写Microsoft Office格式的文件,包括Excel...

    java_poi实现excel导入导出

    Java POI 实现 Excel 导入导出 Java POI 是一个流行的 Java 库,用于处理 Microsoft Office 文件格式,包括 ...在本文中,我们已经详细介绍了如何使用 Java POI 实现 Excel 导入导出功能,包括读取和写入 Excel 文件。

    解决报错java.lang.NoClassDefFoundError: org/apache/james/mime4j/MimeException

    该jar包解决报错java.lang.NoClassDefFoundError: org/apache/james/mime4j/MimeException,亲测可用。

    使用POI解析excel文件并写入数据库

    使用poi解析excel文件,并将数据写入到数据库 项目说明 这个项目实现的功能是读取excel文件中的数据,解析并写入数据库。 读取的excel文件位于项目目录下的 excel\0805.xlsx 使用IntelliJ IDEA开发此项目 使用MYSQL...

    Java 使用poi导入excel 并使用xml做数据验证

    Apache POI是一个流行的库,它允许开发者使用Java来读取、写入和修改Microsoft Office格式的文件,包括Excel(.xlsx, .xls)。在本项目中,我们结合了POI库和XML技术来实现Excel数据的验证与导入数据库。 首先,...

    Java_批量导出大数据量Excel方法.zip

    在Java开发中,批量导出大数据量到Excel是一项常见的任务,尤其在数据分析、报表生成或者数据交换场景下。为了高效地处理这种情况,开发者通常需要掌握一些特定的技术和策略。本资料"Java_批量导出大数据量Excel方法...

    apache poi解析Excel时报错,我将Excel打开后保存,就不会报错,用jar完美解决

    apache poi解析Excel时报错,我将Excel打开后保存,就不会报错,我将重写的类从新打包这样问题虽然网上有解决方案,但是需要自己打包重写对应类,我已将这些步骤做好了。

    解决net.sf.jxls1.0.6中getCellType()和org.apache.poi4.1.2报错问题

    解决net.sf.jxls1.0.6中getCellType()和org.apache.poi4.1.2报错问题

    poi实现导入数据到excel模板

    poi实现导入数据到excel模板,本来想上传poi的jar包,谁知限制我只能上传15M的文件,汗。。。。。 不知道啥时候开始要分了... 代码见: https://github.com/thisisnohi/nohi-doc poi实现导入数据到excel模板。...

    java使用POI操作excel (支持excel2007)

    Java 使用Apache POI库操作Excel 2007文件详解 在Java开发中,处理Excel文件是一项常见的任务,特别是对于数据分析、数据导入导出或报表生成等场景。Apache POI是一个流行的开源库,它允许开发者读写Microsoft ...

Global site tag (gtag.js) - Google Analytics