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为文件名–》搞定!
本文提供了一段SpringBoot中实现从resource目录下载文件的示例代码。通过设置HTTP响应头和使用输入输出流,可以轻松地将指定文件发送给客户端。
1435

被折叠的 条评论
为什么被折叠?



