0

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

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

4

1 回答 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,如有必要,使用一些请求参数或路径信息。

于 2011-03-03T14:01:29.863 回答