jsxl 导出excel

前台

      window.open("?action=exportExcel&" + query); //query为表单序列化参数

后台

@RequestMapping(value = "", params = "action=exportExcel")
    @ResponseBody
    public void exportExcel(HttpServletResponse response, @ModelAttribute ZjylbVo zjylbVo) {

        List<Map> dataList  = zjylbService.select4ExportExcel(paramMap);   //导出数据

        String fileName = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date())+".xls";

        response.setHeader("Content-Disposition", "attachment;filename=" + fileName); // 设置文件的名字

        //导出Excel模板
        InputStream templateStream = this.getClass().getClassLoader().getResourceAsStream("/excel_template/expZjyExcelTemp.xls");

        ExcelTool.export(response, templateStream, dataList);
    }
public static void export(HttpServletResponse response, InputStream templateStream, List<Map<String, Object>> dataMapList) {
        response.setContentType("application/vnd.ms-excel"); // 设置下载类型
        String filename = (new SimpleDateFormat("yyyyMMddhhmmss").format(new Date()))+ ".xls";//设置文件的名字
        response.setHeader("Content-Disposition", "attachment;filename=" + filename);
        OutputStream os = null;

        try {
            os = response.getOutputStream();
            new ExportDataToStream().exportXlsUseTemplate(dataMapList, templateStream, os);
        } catch (IOException e) {
            System.err.println(e.getMessage());
        } finally {
            try {
                if (templateStream != null) {
                    templateStream.close();
                }
                if (os != null) {
                    os.close();
                }
            } catch (IOException e) {
                System.err.println(e.getMessage());
            }
        }
    }
 public Map exportXlsUseTemplate(List<Map<String, Object>> lists, InputStream templateFileIs, OutputStream os) {
        
        Map<String, String> ret = new HashMap<String, String>();
        Map<String, Object> beans = new HashMap<String, Object>();
        beans.put("lists", lists);
        XLSTransformer transformer = new XLSTransformer();
        try {
            org.apache.poi.ss.usermodel.Workbook workbook = transformer.transformXLS(templateFileIs, beans);
            workbook.write(os);
            templateFileIs.close();
        } catch (Exception e) {
            log.error(e.getMessage());
            ret.put("errormsg", "生成xls文件出错,请查看日志");
            return ret;
        }
        return null;
    }

Excel模板




      



阅读更多
个人分类: 开发
上一篇Nginx知识汇总
下一篇蚂蚁课堂系列(一)之并发编程
想对作者说点什么? 我来说一句

写入excel数据

2018年01月09日 8.55MB 下载

导出Excel实例项目:dbToExcel

2011年04月27日 8.59MB 下载

导出Excel c#

2011年09月21日 834KB 下载

导出Excel表的方法

2009年06月25日 3KB 下载

C# 导出excel代码

2011年05月20日 17KB 下载

没有更多推荐了,返回首页

关闭
关闭