<!--Struts-->配置
<!-- 导出报表 -->
<action name="excel" class="com.sf.action.GenerateReportAction"method="execute">
<result name="excel" type="stream">
<param name="contentType">application/vnd.ms-excel</param>
<param name="contentDisposition">attachment;filename="Sales Info.xls"</param>
<param name="inputName">excelStream</param>
</result>
</action>
部分Java代码
private InputStream excelStream;//返回的excel流
public String execute()
{
GenerateReportDS generateReportDS = (GenerateReportDS) Factory
.getInstance("GenerateReportDS");
ByteArrayOutputStream out = new ByteArrayOutputStream();
generateReportDS.generateReport(reportCondition,out);
//将OutputStream转化为InputStream
excelStream=new ByteArrayInputStream(out.toByteArray());
return "excel";
}
book=Workbook.createWorkbook(out);
out.close();