0
我们有一个要求,我们必须从数据库获取一个xlsx文件并向其中添加4张表。XSSFWorkbook内存问题
我已经写了下面的代码来完成相同的。
代码:
OPCPackage opcPackage=OPCPackage.open(tempExcelFile);
XSSFWorkbook xworkbook=new XSSFWorkbook(opcPackage);
SXSSFWorkbook dbWorkBook = new SXSSFWorkbook(xworkbook, ApplicationConstants.FLUSH_LIMIT);
// add sheets to dbworkBook
现在Excel文件的数据库大小为10MB左右,我在
XSSFWorkbook xworkbook=new XSSFWorkbook(opcPackage);
收到一个OOM例外我的内存设置-Xms512m -Xmx1024m
和我不能改变这个号码。我已经看到了一些解决方案,其中事件API has been asked to be used to solve the memory issue
我的问题是即使我使用事件api读取行,我如何将它重新写入SXSSFWorkbook
对象,以便我可以添加4张表。
你应该发布你的mem out stacktrace。异常 –
堆栈跟踪如下: – user3487820