`
neil-jh
  • 浏览: 145822 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

Excel 输出

阅读更多
首先要加jxls.jar 在Action中首先要设置response
例如:
response.reset();
response.setHeader("Content-disposition", 
"attachment; filename=statistic.xls");  //filename 是要输出Excel 模板文件
response.setContentType("application/vnd.ms-excel");
ExportHelper exportHelper = new ExportHelper(); //封装模板数据辅助类
exportHelper.exportForStatistic(list,response.getOutputStream());
return null;  //要返回空


辅助类ExportHelper :
private static final String STATISTIC_EXCEL_PATH = "template/statistic.xls";   //指定模板文件路径 例如:scr/com/xx/action/template/statistic.xls

 public void exportForStatistic(List<Order> list,OutputStream outputStream) throws IOException {
        if (list != null && list.size() > 0) {
            InputStream is = getClass().getResourceAsStream(ORDER_STATISTIC_EXCEL_PATH);
            Map<String, Object> context = new HashMap<String, Object>();
            for (Order entity : list) {
                //....数据处理分装
            }
           
           context.put("orderList", list);
            XLSTransformer transformer = new XLSTransformer();
            HSSFWorkbook workbook = transformer.transformXLS(is, context);
            workbook.write(outputStream);
            outputStream.flush();
            outputStream.close();


        }
    }



模板输出例如:
<jx:forEach items="${orderList}" var="order">
${order.hotelName}
</jx:forEach>

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics