原文链接: https://blog.csdn.net/u013474230/article/details/117438909
java下载excel模板文件
使用java代码下载excel模板文件,在本地环境写的代码,测试都没有问题,发布到服务器(linux系统),发现下载不了,模板文件是放在当前项目的resources文件夹下,尝试了很多方案,最后使用poi包下的XSSFWorkbook类成功下载。
1、在pom.xml中引入第三方jar包支持:
<dependency>
<groupId>org.jeecg</groupId>
<artifactId>easypoi-base</artifactId>
<version>2.3.1</version>
</dependency>
1
2
3
4
5
2.引入XSSFWorkbook类下载excel的内容
@ApiOperation(value = "下载模板接口")
@GetMapping(value = "downloadTemplate")
public void downloadTemplate(HttpServletResponse responset) throws IOException {
logger.info("开始下载模板--------------->");
//获取要下载的模板名称
String fileName = "template.xlsx";
//设置要下载的文件的名称
response.setHeader("Content-Disposition", "attachment;fileName=" + fileName);
//通知客服文件的MIME类型
response.setContentType("application/vnd.ms-template;charset=UTF-8");
//获取文件的路径
try (InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("template/template.xlsx")) {
//读取excel模板
XSSFWorkbook wb = new XSSFWorkbook(inputStream);
OutputStream os = new BufferedOutputStream(response.getOutputStream());
wb.write(os);
os.flush();
os.close();
} catch (Exception e) {
logger.error("下载模板出错:" + e);
}
}