我是靠谱客的博主 含蓄大米,这篇文章主要介绍阿里巴巴开源组件Easy Excel的Excel导入导出,现在分享给大家,希望可以做个参考。

  1. 导出
    单Sheet导出
    复制代码
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    @ApiOperation("导出") @PostMapping("export") public void export(HttpServletRequest request, HttpServletResponse response) throws IOException { List<StorageDailyReportNaturalGasMagic> search = this.getList(); //写入下载命令 response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); response.setCharacterEncoding("utf-8"); // 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系 String fileName = URLEncoder.encode("日报表", "UTF-8").replaceAll("\+", "%20"); //写入文件名 response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); try (ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream(), StorageDailyReportNaturalGasMagic.class).build()) { //构建Sheet WriteSheet writeSheet = EasyExcel.writerSheet(0, "天然气").build(); //将数据写入Sheet excelWriter.write(search, writeSheet); } }

    多Sheet导出
     

    复制代码
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    @RequestMapping("exportExcel") @ApiOperation("数据库导出") public void exportExcel(HttpServletRequest request, HttpServletResponse response) throws IOException { List<NodeRedPlcDictMagic> list = this.getList(); // 根据type分组 Map<String, List<NodeRedPlcDictMagic>> groupBy = list.stream().collect(Collectors.groupingBy(NodeRedPlcDictMagic::getType)); response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); response.setCharacterEncoding("utf-8"); // 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系 String fileName = URLEncoder.encode("PLC字典", "UTF-8").replaceAll("\+", "%20"); response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); int i = 0; // 按照type分组导入到不同的Sheet中 try (ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream(), NodeRedPlcDictMagic.class).build()) { for (Map.Entry<String, List<NodeRedPlcDictMagic>> entry : groupBy.entrySet()) { //构建Sheet WriteSheet writeSheet = EasyExcel.writerSheet(i++, entry.getKey()).build(); //写入Sheet excelWriter.write(entry.getValue(), writeSheet); } } }

  2. 导入

最后

以上就是含蓄大米最近收集整理的关于阿里巴巴开源组件Easy Excel的Excel导入导出的全部内容,更多相关阿里巴巴开源组件Easy内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(75)

评论列表共有 0 条评论

立即
投稿
返回
顶部