EasyExcel中使用表头模板示例
解决方案
在EasyExcel的官方示例中,使用模板导出Excel,其结果仍然还会重新打印表头。不满足使用表头模板的需求。在参考源码后,找到如下解决方案。
String templateFileName = TestFileUtil.getPath() + "demo" + File.separator + "demo1.xlsx";
System.out.println(templateFileName);
String fileName = TestFileUtil.getPath() + "templateWrite" + System.currentTimeMillis() + ".xlsx";
System.out.println(fileName);
// 这里 需要指定写用哪个class去写,然后写到第一个sheet,名字为模板 然后文件流会自动关闭
// EasyExcel.write(fileName, DemoData.class).withTemplate(templateFileName).sheet().doWrite(data());
EasyExcel.write(fileName).withTemplate(templateFileName).sheet().doWrite(data());
导出实体类定义
1 public class DemoData {
2 @ExcelProperty("字符串标题")
3 private String string;
4 @ExcelProperty("日期标题")
5 private Date date;
6 @ExcelProperty("数字标题")
7 private Double doubleData;
8
9 /**
10 * 忽略这个字段
11 */
12 @ExcelIgnore
13 private String ignore;
14 }
运行结果
没有打印导出实体类定义的表头,使用的是模板的表头。符合目标需求。

若沿用官方示例的写法。其运行结果为:双层表头带数据信息。

总结
EasyExcel.write(fileName, DemoData.class)方法中第二参数表示Excel文件的表头,若不传则不会写表头列信息;同时doWirte(data())中的data信息仍然为导出实体类的List集合对象。
EasyExcel中使用表头模板示例的更多相关文章
- 《Entity Framework 6 Recipes》中文翻译系列 (20) -----第四章 ASP.NET MVC中使用实体框架之在MVC中构建一个CRUD示例
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 第四章 ASP.NET MVC中使用实体框架 ASP.NET是一个免费的Web框架 ...
- 在RichFaces中使用Facelets模板
在RichFaces中使用Facelets模板 目录 Facelets简介 Facelets标签 创建相应文件 Facelets简介 Facelets是用来构建JSF应用程序的默认视图技术.它为表现层 ...
- Django中如何查找模板
参考:http://my.oschina.net/zuoan001/blog/188782 Django的setting中有关找模板的配置有如下两个: TEMPLATE_LOADERS TEMPLAT ...
- C++中的函数模板
我们在定义函数时,可以通过定义函数模板,来简化一些功能相同而数据类型不同的函数的定义和调用过程. C++中的函数模板 对于类的声明来说,也有同样的问题.有时,有两个或多个类,其功能是相同的,仅仅是数据 ...
- 在Spring MVC和Spring Boot中使用thymeleaf模板
Spring MVC: POM: <!-- thymeleaf模板 --> <!-- https://mvnrepository.com/artifact/org.thymeleaf ...
- MVC中使用T4模板
参考博文 http://www.cnblogs.com/heyuquan/archive/2012/07/26/2610959.html 图片释义 1.简单示例,对基本的模块标记 2.根据上图生成的类 ...
- MShadow中的表达式模板
表达式模板是Eigen.GSL和boost.uBLAS等高性能C++矩阵库的核心技术.本文基于MXNet给出的教程文档来阐述MXNet所依赖的高性能矩阵库MShadow背后的原理. 编写高效的机器学习 ...
- VS2013中的MVC5模板部署到mono上的艰辛历程
部署环境:CentOS7 + Mono 3.10 + Jexus 5.6 在Xamarin.Studio创建的asp.net项目,部署过程非常顺利,没有遇到什么问题:但在VS2013中创建的asp.n ...
- VS2012中丢失ArcGIS模板的解决方法
VS2012中丢失ArcGIS模板的解决方法 由于ArcGIS10.0(for .NET)默认是用VS2010作为开发工具的,所以在先安装VS2012后装ArcGIS10.0 桌面版及ArcObjec ...
- jQuery中$.fn的用法示例介绍
$.fn是指jquery的命名空间,加上fn上的方法及属性,会对jquery实例每一个有效,下面有个不错的示例,喜欢的朋友可以参考下 如扩展$.fn.abc(),即$.fn.abc()是对jquery ...
随机推荐
- PropertyGrid实现文件选择项
原来公司的一段代码,现在给朋友写的软件里也用上了,看样用处挺多,所以保存一下. 自定义属性类: using System; using System.Collections.Generic; usin ...
- 爬虫之浏览器指纹ja3_hash的更改
浏览器指纹 反爬中会遇到浏览器指纹,它是不会随着你更换 IP 或者 User-Agent 而改变的.并且他们的指纹每次请求也是固定的.只要网站发现某个拥有特定指纹的客户端持续高频率请求网站,它就可以把 ...
- 2020-10-04:java中GC Root 对象有哪些?
福哥答案2020-10-04:#福大大架构师每日一题# 简单回答:1.局部变量.2.静态引用的对象.3.常量引用的对象.4.JNI引用的对象. 中级回答:1.虚拟机栈(栈帧中的本地变量表)中引用的对象 ...
- Accurate SerDes LineRate
测试现象:(单板A板载7A series,单板B板载7K series) 1. 单板A板载2个type C接口,通过线缆自环,GTP near-end loopback, OK. 2. 2块单板A,使 ...
- ODOO13之五:Odoo 13开发之导入、导出以及模块数据
大多数Odoo 模块的定义,如用户界面和安全规则,实际是存储在对应数据表中的数据记录.模块中的 XML 和 CSV 文件不是 Odoo 应用运行时使用,而是载入数据表的手段.正是因为这个原因,Odoo ...
- Health Kit文档大变样,一起尝鲜!
Health Kit文档全新升级,开发场景更清晰,聚焦你关心的问题,快来一起尝鲜! 文档入口请戳:文档入口~ 如果你是运动健康的老朋友,可以从旧文档页面上方的提示信息中进入:最新版本哦. 一. 架构调 ...
- 烂怂if-else代码优化方案
0.问题概述 代码可读性是衡量代码质量的重要标准,可读性也是可维护性.可扩展性的保证,因为代码是连接程序员和机器的中间桥梁,要对双边友好.Quora 上有一个帖子: "What are so ...
- VuePress2.0构建项目文档系统
VuePress2.0构建项目文档系统 参考TerraMours 官网.https://terramours.site/ 文件结构参考: 1.修改首页README.md 修改项目下的README.md ...
- Weblogic反序列化(CVE-2023-21839)漏洞复现
前言 序列化(Serialization):将对象的状态信息转换为可以存储或传输的形式的过程,一般将对象转换为字节流.序列化时,对象的当前状态被写入到临时或持久性存储区(文件.内存.数据库等). 反序 ...
- 【理论积累】Python中的Pandas库【一】
Pandas库介绍 Pandas 是一个用于数据分析的 Python 第三方库,能够处理和分析不同格式的数据,例如:CSV.Excel.SQL 数据库等.Pandas 提供了两种数据结构,分别为 Se ...