springboot下载resource下文件
直接上代码
@ResponseBody
@GetMapping("downTemplate")
@ApiOperation(value = "模板下载", notes = "用于导入的excel模板下载")
public void downExcelTemplate(HttpServletResponse response) throws IOException {
response.setHeader("Content-type", "multipart/form-data");
InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("static/" + templateName);
// 设置响应类型
response.setContentType("application/force-download;charset=UTF-8");
// 设置扩展头,当Content-Type 的类型为要下载的类型时 , 这个信息头会告诉浏览器这个文件的名字和类型。
if (FileUtil.isOSLinux()) {
response.setHeader("Content-Disposition", "attachment;filename=" + new String((incomeBatchTemplateName).getBytes("utf-8"),"ISO8859-1"));
} else {
response.setHeader("Content-Disposition", "attachment;filename=" + new String((incomeBatchTemplateName).getBytes("utf-8"),"ISO8859-1"));
}
// 获取输出流
OutputStream os = response.getOutputStream();
byte[] buf = new byte[1024];
int len = 0;
// 循环输出所需下载文件
while ((len = inputStream.read(buf)) != -1) {
os.write(buf, 0, len);
}
}
说明:templateName为文件名–》搞定!