🍁 作者:知识浅谈,CSDN签约讲师,CSDN博客专家,华为云云享专家,阿里云专家博主
📌 擅长领域:全栈工程师、爬虫、ACM算法,大数据,深度学习
💒 公众号:知识浅谈
🔥 微信:zsqtcyl 联系我领取福利
🤞EasyExcel:如何快速生成一个只含有表头的模板Excel🤞
- 🎈使用场景
- 🎈依赖引入
- 🎈工具类制作
- 🎈生成表头的Excel模板
- 🍚总结
🎈使用场景
Excel在项目中的使用往往是读和写,一般来说excel中含有规律的数据,读取之后转化为对应的实体对象。在读取数据之前是需要制作相应的模板的,本篇文章主要讲述一下怎么生成只包含表头的Excel
🎈依赖引入
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>3.3.3</version>
</dependency>
🎈工具类制作
public void genTitleExcel(HttpServletResponse response,String[] split){ //response 作为响应体,split作为excel中第一行数表头数据
try {
List<List<String>> head = new ArrayList<>();
for (int i = 0; i < split.length; i++) {
List<String> tmp = new ArrayList<>();
tmp.add(split[i]);
head.add(tmp);
}
//设置响应类型
response.setContentType("application/vnd.ms-excel");
response.setCharacterEncoding("utf-8");
//设置文件名并对其进行URL编码
String fileName = URLEncoder.encode("模板文件","UTF-8").replaceAll("\\+","%20");
response.setHeader("Content-Disposition","attachment;filename*=utf-8''"+fileName+".xlsx");
ExcelWriterBuilder write = EasyExcel.write(response.getOutputStream());
write.head(head).sheet("Sheet1").doWrite(new ArrayList<>());
} catch (IOException e) {
throw new RuntimeException(e);
}
}
🎈生成表头的Excel模板
@PostMapping("/downloadDocTplExcel")
public R downloadDocTplExcel(HttpServletResponse response) {
try {
String[] split = new String[]{"列1", "列2", "列3"};
genTitleExcel(response,split);
}catch(Exception e){
throw new RuntimeException(e);
}
}
🍚总结
上述生成的excel不包含内容,只有一个表头,便于后续我们进行数据的插入和填充。
大功告成,撒花致谢🎆🎇🌟,关注我不迷路,带你起飞带你富。
Writted By 知识浅谈