zoukankan      html  css  js  c++  java
  • java 后端导出excel

    1.这里介绍使用阿里提供的方法来导出excel

    2.首先我们创建一个实体类然后继承 'BaseRowModel' 这个类,然后写变量名在需要导出的字段上加上@ExcelProperty注解

    3.然后再sql查询语句上面的字段与变量名要一致

    4.然后自己在controller层导出就好

    @RequestMapping(value = "/ImportData")

      public void ImportData (@RequestBody List<mutilDataImport> projectBeans, HttpServletResponse response)throws IOException {
    String fileName = "多坐标数据导出";
    response.setContentType("multipart/form-data");
    response.setCharacterEncoding("utf-8");
    response.addHeader("Content-Disposition", "filename=" + fileName+ ".xlsx");
    String sheetName = "全量数据";
    //设置样式
    TableStyle tableStyle=new TableStyle();
    tableStyle.setTableHeadBackGroundColor(IndexedColors.SKY_BLUE);
    tableStyle.setTableContentBackGroundColor(IndexedColors.WHITE1);
    Font font = new Font();
    font.setBold(false);
    font.setFontName("宋体");
    font.setFontHeightInPoints((short) 9);
    tableStyle.setTableContentFont(font);
    ExcelWriter writer = new ExcelWriter(response.getOutputStream(), ExcelTypeEnum.XLSX);
    //写第一个sheet, sheet1 数据全是List<String> 无模型映射关系
    Sheet sheet = new Sheet(1, 0,'刚才创建的类名'.class);
    Sheet sheet2 = new Sheet(2,1,
    刚才创建的类名.class, "去重数据",null);
      sheet.setTableStyle(tableStyle);
    sheet2.setTableStyle(tableStyle);
    List<mutilDataImport> mutilDataImport = dataImportService.queryprojectData(projectBeans);
    List<MutilDataImports> mutilDataImports = dataImportService.queryprojectData2(projectBeans);
    sheet.setSheetName(sheetName);
    writer.write('数据返回的集合例如这里是
    mutilDataImport', sheet);
      writer.write('第二个sheet返回数据的集合', sheet2);
    writer.finish();
    }

    5.导出的图如下


  • 相关阅读:
    第07节-开源蓝牙协议BTStack框架代码阅读(上)
    第06节-开源蓝牙协议BTStack框架分析
    第05节-BLE协议物理层(PHY)
    第04节-BLE协议抓包演示
    第03节-BLE协议各层数据格式概述
    【重点声明】此系列仅用于工作和学习,禁止用于非法攻击。一切遵守《网络安全法》
    海外信息安全资源
    从浏览器攻击思考入门的问题。
    攻击载荷免杀技术
    聊聊NTLM认证协议
  • 原文地址:https://www.cnblogs.com/bt2882/p/10870227.html
Copyright © 2011-2022 走看看