您好我正在使用 Richfaces 3.3 并寻找将数据导出到屏幕到 Excel 文件的最佳解决方案。该文件需要下载到用户的机器上。我通过互联网搜索,发现 POI api 可以做到这一点。寻找可能的最佳解决方案。
问问题
2686 次
1 回答
2
是的,您可以使用 Apache 的POI
api。网上有很多例子展示了如何在java
. 这样做JSF
并没有太大的不同。
访问以下链接以了解如何在JSF2
.
导出到 Excel JSF 和 PrimeFaces
如何导出 rich:dataTable 到 excel
以下示例显示了如何在jsf1.2
public void generate() {
try {
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet("sheet1");
HSSFRow row = sheet.createRow(0);
row.createCell(0).setCellValue("1st Col value");
row.createCell(1).setCellValue("2nd Col value");
FacesContext context = FacesContext.getCurrentInstance();
HttpServletResponse res = (HttpServletResponse) context.getExternalContext().getResponse();
res.setContentType("application/vnd.ms-excel");
res.setHeader("Content-disposition", "attachment;filename=mydata.xls");
ServletOutputStream out = res.getOutputStream();
wb.write(out);
out.flush();
out.close();
FacesContext.getCurrentInstance().responseComplete();
} catch (Exception e) {
e.printStackTrace();
}
}
您需要下载并添加poi-version-yyyymmdd.jar
.
于 2012-12-31T08:31:51.913 回答