使用spring的AbstractXlsxView下载大文件

时间:2018-07-30 13:52:28

标签: java spring spring-boot

我正在使用spring的AbstractXlsxView下载大文件。 下面是AbstractXlsxView实现和控制器方法的代码。

class ExcelView extends AbstractXlsxView {

@Override
protected void buildExcelDocument(Map<String, Object> map, Workbook workbook, 
     HttpServletRequest request, HttpServletResponse response) throws Exception { 
    //logic here...
}}

class ExportController {

@PostMapping("/report.xlsx")
public View downloadReport() throws SQLException {
        ExcelView view = exportDataService.getReport();
        return view;
}}

通过这种方法,我遇到大文件(〜1GB)的堆内存不足错误。有什么办法可以修改此方法以容纳大文件(写入输出流而不是将所有内容存储在内存中)?

0 个答案:

没有答案