EasyExcel导出包含多个sheet的Excel
Java
@Overridepublic void exportPostOverview(HttpServletResponse response) {// 获取所有数据List<HeadcountOverviewAreaCodeDTO> headcountViewList =headcountViewMapper.getAllHeadcountView();List<HeadcountOverviewBuCodeDTO> buCodeList = getBuCodeExportList();List<HeadcountOverviewRegionCodeDTO> regionCodeList =getRegionCodeExportList(headcountViewList);List<HeadcountOverviewAreaCodeDTO> areaCodeList = getAreaCodeExportList(headcountViewList);// 设置输入流,设置响应域response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");response.setHeader("Access-Control-Expose-Headers", "Content-Disposition");response.setCharacterEncoding("utf-8");String fileName = URLEncoder.encode("编制总览.xlsx", "UTF-8");response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName);// 需要合并的列List<Integer> ignoreColumn = new ArrayList<>();ignoreColumn.add(6);ignoreColumn.add(7);ignoreColumn.add(8);ignoreColumn.add(10);ignoreColumn.add(11);// 需要从第一行开始,列头第一行,到第12列int mergeRowIndex = 1;int mergeColumnRegion = 11;try (ExcelWriter excelWriter = EasyExcelFactory.write(response.getOutputStream()).autoCloseStream(Boolean.TRUE).build()){WriteSheet buSheet =EasyExcelFactory.writerSheet(0, "BU").head(HeadcountOverviewBuCodeDTO.class).registerWriteHandler(new ExcelFillCellMergeStrategy(mergeRowIndex, mergeColumnRegion, ignoreColumn)).build();WriteSheet regionSheet =EasyExcelFactory.writerSheet(1, "Region").head(HeadcountOverviewRegionCodeDTO.class).registerWriteHandler(new ExcelFillCellMergeStrategy(mergeRowIndex, mergeColumnRegion, ignoreColumn)).build();WriteSheet areaSheet =EasyExcelFactory.writerSheet(2, "Area").head(HeadcountOverviewAreaCodeDTO.class).registerWriteHandler(new ExcelFillCellMergeStrategy(mergeRowIndex, mergeColumnRegion, ignoreColumn)).build();excelWriter.write(buCodeList, buSheet).write(regionCodeList, regionSheet).write(areaCodeList, areaSheet);excelWriter.finish();} catch (IOException e) {log.error("导出异常:{}", e);}}
这里是导出包含3个sheet的excel文件。
参考:
- EasyExcel导出自定义合并单元格文件
- 重复多次写入(写到单个或者多个Sheet)
EasyExcel导出包含多个sheet的Excel相关推荐
- R先生一步步教你用EasyExcel导出包含多图片的Excel
R先生一步步教你用EasyExcel导出包含多图片的Excel 光与光之间的黑暗,路人永不得知 书接上文说到,R先生之前有写过一篇用EasyExel导出包含图片的Excel文件,由于在官方文档并没有找 ...
- 教你用EasyExcel导出包含图片列的excel
教你用EasyExcel导出包含图片列的excel 前情概要 众所周知,导入及导出功能在后台服务中很常见,博主目前参与的这个项目就有多Excel的导入和导出,但是在我昨天完成需求的时候,突然发现项目里 ...
- 通过BigExcelWriter导出包含数据和图片的excel表,涉及到sheet.createDrawingPatriarch()画图对象,涉及到url转二进制数据
通过BigExcelWriter导出包含数据和图片的excel表,涉及到sheet.createDrawingPatriarch()画图对象,涉及到url转二进制数据 文章目录 通过BigExcelW ...
- EasyExcel导出自定义下拉数据集的Excel模板文件
有时候因为业务需要,导出的Excel模板里面的单元格下拉数据集可能是用户在系统中自定义的数据字典数据,我们需要通过接口拿到相应字段的对应数据集,导出类似下方这种模板: EasyExcel的api地址: ...
- 使用EasyExcel导出带下拉框的Excel
1. 创建注解 import java.lang.annotation.*;/*** 标注导出的列为下拉框类型,并为下拉框设置内容*/ @Documented @Retention(Retention ...
- Easyexcel导出带下拉框选项excel模板
需求:导出的excel模板,表头字段动态生成.sheet页下拉框内容动态生成 解决思路:为了避免excel下拉框选项过多会导致内容不显示,将下拉框的内容都存储在另一个新建的固定的sheet页,再通过引 ...
- easyExcel导出多个sheet的excel
easyExcel导出 导出背景 依赖 单个sheet的excel导出 定义导出模型 controller层代码 多个sheet的excel导出 所用的导出模型 controller层代码 所用到的工 ...
- EasyExcel 实现写入多个sheet数据进excel模板并下载
目录 说明 说明 场景说明:对数据库或者其他数据源读取获取到数据,需要写入到excel完成下载功能,其中一个sheet是固定模板,只需要填充值,另一个sheet是动态的表头和数据需要填充.模板如下图, ...
- 同时导出多个excel,并且一个excel中包含多个sheet
前段组内要做一个关于excel的任务,其中一个小业务:一个文件夹下有多个excel,要求导出的一个文件夹代表一个excel,一个excel代表一个sheet,最终导出的是一个excel中包含多个she ...
最新文章
- 【Maven学习】Nexus私服代理其他第三方的Maven仓库
- ARM处理器的工作状态
- 无csrf防护的html页面,Springs CSRF保护仅* HTML登录页面
- mysql 导出数据为csv格式
- VHDL基本门电路和数值比较器的设计
- 中职高级计算机操作员,计算机操作员专业排行榜
- 微软白皮书发布:在IIS7.5中用Service Bus端点寄宿WCF服务
- 易懂的比特币工作机理详解
- android item list居中,RecyclerView选中item居中显示
- Visual Studio Code 基本操作 - Windows 版
- idea 正则表达式替换
- 曾宪武《物联网通信技术》课后答案(二)
- python cad二次开发文档_AutoCAD二次开发&实现简单的自动编号
- IAR各版本下载链接
- 常用的正则表达式,复制粘贴,正则就这么简单
- 「米聊」突然复活,雷布斯真的是出其不意
- matlab根据y标注x,知道y的值,怎么标注出对应x值所对应曲线的坐标啊;matlab
- Redis--变慢的原因及排查方法--系统方面
- 华为平板M3能用鸿蒙吗,华为平板M3怎么样 麒麟950处理器搭配快充只要1888!
- 如何使用Visual Studio2010运行C语言
热门文章
- 写在毕业之前-回顾2017,展望2018-
- 上海应用技术大学本科毕业论文答辩和论文选题PPT模板
- 超详细梳理HBase核心知识点(上)
- Seajs使用实例入门
- dd通过网络克隆硬盘或者备份
- 如何用js实现日期天数、时分秒的倒计时
- C语言中exit(0)与exit(1)有什么区别
- exit函数和_exit函数的二三事
- 201671010438王奕晗 实验三 作业互评与改进
- TypeError: unsupported format string passed to NoneType.__format__