Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Apache POI(excel)性能getSheet()与createSheet()的比较_Java_Excel_Performance_Apache Poi - Fatal编程技术网

Java Apache POI(excel)性能getSheet()与createSheet()的比较

Java Apache POI(excel)性能getSheet()与createSheet()的比较,java,excel,performance,apache-poi,Java,Excel,Performance,Apache Poi,构造非常简单,我输入了对象列表(比如说100k条记录),然后将这个列表放入excel表格。 我注意到,如果我使用createSheet(),填充工作表只需几秒钟。 若我使用getSheet(例如,我的报告使用模板),填充报告需要几分钟的时间。对此有什么解释 public void populateSheet(List<Objects> input) { XSSFSheet rowsSheet = getWorkbook().createSheet("SheetName

构造非常简单,我输入了对象列表(比如说100k条记录),然后将这个列表放入excel表格。 我注意到,如果我使用createSheet(),填充工作表只需几秒钟。 若我使用getSheet(例如,我的报告使用模板),填充报告需要几分钟的时间。对此有什么解释

public void populateSheet(List<Objects> input) {
        XSSFSheet rowsSheet = getWorkbook().createSheet("SheetName");
        int l = 1;
        for (Objects row : input) {
             .....
        }

public void populateSheet(List<Objects> input) {
        XSSFSheet rowsSheet = getWorkbook().getSheet("SheetName");
        int l = 1;
        for (Objects row : input) {
             .....
        }
public void populateSheet(列表输入){
XSSFSheet rowsSheet=getWorkbook().createSheet(“SheetName”);
int l=1;
用于(对象行:输入){
.....
}
公共作废填充表(列表输入){
XSSFSheet rowsSheet=getWorkbook().getSheet(“SheetName”);
int l=1;
用于(对象行:输入){
.....
}

根据我的经验,excel文件可能包含大量隐藏内容,即使在打开文件时什么也看不到。
我会尝试重新创建工作表的新版本,并通过复制/粘贴重新创建标题。然后,测试程序的速度。

根据我的经验,excel文件可能包含大量隐藏内容,即使在打开文件时看不到任何内容。
我会尝试重新创建一个新版本的工作表,并通过复制/粘贴来重新创建标题。然后,测试程序的速度。

您的模板是否包含很多内容,如单元格数据、多张工作表、公式等等?模板有两个选项卡。一个选项卡有两个图表(但它们没有连接到多行),第二张工作表只有表头可能因为在内存中加载图表会导致性能损失。请尝试使用类似的模板,但不使用图表。您的模板是否包含大量内容,如单元格数据、多张工作表、公式等…?模板有两个选项卡。一个选项卡有两个图表(但它们没有连接到多行),第二张工作表只有标题可能因为在内存中加载图表会导致性能损失。请尝试使用类似的模板,但不使用图表。这正是我所做的。初始模板是从更大的文件创建的…这正是我所做的。初始模板是从更大的文件创建的。。。