原生POI导出

 

public void exportAnalyse(HttpServletResponse response) {
        //data为行 集合
        List<List<String>> data = new ArrayList();
        for (int i = 0; i < 10; i++) {
       //columns为列集合 List
<String> columns = new ArrayList<>(); //第一列,属性名 String name = AnalyseColumn.properties[i]; columns.add(name); data.add(columns); } //原生POI //1.实例化HSSFWorkbook HSSFWorkbook workbook = new HSSFWorkbook(); //2.创建一个Excel表单,参数为sheet的名字 HSSFSheet sheet = workbook.createSheet("成绩分析"); //3.设置单元格并赋值 //创建5行 for (int i = 0; i < data.size(); i++) { HSSFRow row = sheet.createRow(i); //每一行再创建N列 for (int j = 0; j < data.get(i).size(); j++) { row.createCell(j).setCellValue(data.get(i).get(j)); } } //3.设置浏览器下载 try { String fileName = "成绩分析-导出.xls"; //清空response response.reset(); //设置response的Header response.addHeader("Access-Control-Allow-Origin", "*"); response.setHeader("Access-Control-Expose-Headers", "Content-Disposition"); response.setCharacterEncoding("UTF-8"); response.setHeader("content-Type", "application/vnd.ms-excel"); response.addHeader("Content-Disposition", "attachment;filename=" + fileName); OutputStream os = new BufferedOutputStream(response.getOutputStream()); //将excel写入到输出流中 workbook.write(os); os.flush(); os.close(); log.info("设置浏览器下载成功!"); } catch (Exception e) { log.info("设置浏览器下载失败!"); e.printStackTrace(); } }

 

posted @ 2021-05-17 17:05  野生野鸡码农  阅读(101)  评论(0编辑  收藏  举报