近期在做利用POI导出Excel时候,服务端出现java.lang.IllegalArgumentException: Merged region A1 must contain 2 or more cells导致数据没有导出成功,排查发现跟返回数据数量有关系,当返回的数据大于等于2条时候没问题,小于2条时候就有问题。找到原因之后定位合并单元格代码就行调整
解决方法:
调整前:
sheet.addMergedRegion(new CellRangeAddress(1, excelData.size()-1, 0, 0));
调整后:(增加判断)
if(excelData!=null && excelData.size()>2){
sheet.addMergedRegion(new CellRangeAddress(1, excelData.size()-1, 0, 0));
}