如何让用户从Java/Struts中的Web应用程序将数据库中的数据下载到Excel表格文件中?

问题描述 投票:0回答:1

我想生成一个报告,其中包括一个根据数据库数据生成的 Excel 工作表。我正在使用 Apache POI HSSF 在模型中创建 Excel 工作表文件。

现在如何让用户下载我创建的文件?

excel jsp apache-poi poi-hssf
1个回答
4
投票

只需使用 servlet。将

response.getOutputStream()
馈送到 POI HSSF 以写入工作簿。最重要的部分是
Content-Disposition
响应标头。如果您将其设置为
attachment
,则浏览器将弹出另存为对话框。

response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-Disposition", "attachment; filename=name.xls");
WritableWorkbook workBook = Workbook.createWorkbook(response.getOutputStream());
// ...

然后让下载 URL 指向该 servlet,如有必要,还可以包含一些请求参数或路径信息。

© www.soinside.com 2019 - 2024. All rights reserved.