当前位置: 首页 > news >正文

使用模板导出excel文件

使用模板导出excel文件

在这里插入图片描述

    /*** 导出 事件明细数据报表** @param response* @throws Exception*/@GetMapping("/export")public void export(String startTime, String endTime,final HttpServletResponse response) throws Exception {List<EventStaticResponse> eventStaticResponses = eventStaticService.queryEventStaticByType(startTime, endTime);String fileName = "事件统计数据.xlsx";// 方案1ClassPathResource classPathResource = new ClassPathResource("事件统计数据.xlsx");ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream()).withTemplate(classPathResource.getStream()).registerWriteHandler(new CustomCellWriteHandler(0,new int[]{0})).build();WriteSheet writeSheet = EasyExcel.writerSheet().build();// 这里注意 入参用了forceNewRow 代表在写入list的时候不管list下面有没有空行 都会创建一行,然后下面的数据往后移动。默认 是false,会直接使用下一行,如果没有则创建。// forceNewRow 如果设置了true,有个缺点 就是他会把所有的数据都放到内存了,所以慎用// 简单的说 如果你的模板有list,且list不是最后一行,下面还有数据需要填充 就必须设置 forceNewRow=true 但是这个就会把所有数据放到内存 会很耗内存// 如果数据量大 list不是最后一行 参照下一个FillConfig fillConfig = FillConfig.builder().forceNewRow(Boolean.TRUE).build();excelWriter.fill(eventStaticResponses, fillConfig, writeSheet);response.setCharacterEncoding("UTF-8");response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(fileName, "UTF-8"));response.setHeader("content-Type", "application/octet-stream");excelWriter.finish();}

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • C++ 124类和对象_运算符重载_赋值
  • 前端工程化-05.Vue项目开发流程
  • Jenkins持续集成工具学习
  • LeetCode 242 有效的字母异位词
  • 使用X-AnyLabeling自动标注数据集(以yolov10模型为例,多图详细介绍)
  • 【商城源码开发要多久】
  • 时间记录内核模块
  • 【AI/算法类】OPPO 2025届秋招笔试题(B卷)
  • OpenCV的编译(MinGW)
  • 大模型是如何升级的呢?技术?应用?
  • 微信小程序开发:基础架构与配置文件
  • opencv 控制鼠标键盘实现功能setMouseCallback
  • 江科大/江协科技 STM32学习笔记P24
  • 北京城市图书馆-非遗文献馆:OLED透明拼接屏的璀璨应用
  • 探索Witin-NN Tools量化开源项目:模拟神经网络映射映射到存内芯片的计算过程
  • 【vuex入门系列02】mutation接收单个参数和多个参数
  • CEF与代理
  • Docker 1.12实践:Docker Service、Stack与分布式应用捆绑包
  • JavaScript/HTML5图表开发工具JavaScript Charts v3.19.6发布【附下载】
  • Java知识点总结(JDBC-连接步骤及CRUD)
  • LeetCode刷题——29. Divide Two Integers(Part 1靠自己)
  • node.js
  • Redux系列x:源码分析
  • SOFAMosn配置模型
  • SQLServer插入数据
  • win10下安装mysql5.7
  • 大型网站性能监测、分析与优化常见问题QA
  • 聊聊hikari连接池的leakDetectionThreshold
  • 前端性能优化——回流与重绘
  • 扫描识别控件Dynamic Web TWAIN v12.2发布,改进SSL证书
  • 使用Envoy 作Sidecar Proxy的微服务模式-4.Prometheus的指标收集
  • 微信开放平台全网发布【失败】的几点排查方法
  • 云栖大讲堂Java基础入门(三)- 阿里巴巴Java开发手册介绍
  • 完善智慧办公建设,小熊U租获京东数千万元A+轮融资 ...
  • 智能情侣枕Pillow Talk,倾听彼此的心跳
  • # MySQL server 层和存储引擎层是怎么交互数据的?
  • #中的引用型是什么意识_Java中四种引用有什么区别以及应用场景
  • (14)学习笔记:动手深度学习(Pytorch神经网络基础)
  • (6) 深入探索Python-Pandas库的核心数据结构:DataFrame全面解析
  • (k8s中)docker netty OOM问题记录
  • (react踩过的坑)antd 如何同时获取一个select 的value和 label值
  • (超简单)使用vuepress搭建自己的博客并部署到github pages上
  • (每日一问)操作系统:常见的 Linux 指令详解
  • (三)Pytorch快速搭建卷积神经网络模型实现手写数字识别(代码+详细注解)
  • (一)Java算法:二分查找
  • (一)认识微服务
  • (转)【Hibernate总结系列】使用举例
  • (轉貼) 蒼井そら挑戰筋肉擂台 (Misc)
  • *上位机的定义
  • .net mvc 获取url中controller和action
  • .net web项目 调用webService
  • .net 连接达梦数据库开发环境部署
  • .NET/C#⾯试题汇总系列:集合、异常、泛型、LINQ、委托、EF!(完整版)
  • .net网站发布-允许更新此预编译站点
  • .NET文档生成工具ADB使用图文教程