Spring Boot项目获取resources目录下文件并返回给前端的方案
前言
最近项目需要下载一个模板文件用来修改上传,模板文件放在Spring Boot项目中resources文件夹下。功能就是获取这个文件然后下载。解决的主要问题就是因为打出来是一个jar包,运行的时候就是相当于从jar包里面的目录获取这个文件。
方案
其实总共有三种方式。
1.getResourceAsStream
这个是Class对象的方法,利用类加载器查找。
InputStream input = getClass().getResourceAsStream("/template/template.xlsx");
2.ResourceLoader
这是Spring Boot提供的解析类,通过解析获取org.springframework.core.io.Resource对象,可以通过添加classpath:拿到resources具体文件。
@Autowired
private ResourceLoader resourceLoader;
public void test() {
Resource resource = resourceLoader.getResource("classpath:/template/template.xlsx");
Files.readAllBytes(Paths.get(resource.getURI())
//...
}
3.@Value配合Resource
这个是目前使用的方式,其实跟第2种差不多,就是拿到Resource 解析
@Value("classpath:/template/template.xlsx")
private Resource template;
public void test() {
Files.readAllBytes(Paths.get(template.getURI())
//...
}
总结
到此这篇关于Spring Boot项目获取resources目录下文件并返回给前端的文章就介绍到这了,更多相关SpringBoot获取resources目录文件并返回前端内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
- Spring Boot获取resources目录下的文件三种方式详解
- springboot项目读取resources目录下的文件的9种方式
- Springboot 项目读取Resources目录下的文件(推荐)
- Spring Boot读取resources目录文件方法详解
- SpringBoot中读取jar包中的resources目录下的文件的三种方式
- SpringBoot读取Resource目录下文件的四种方式总结
- 详解SpringBoot读取resource目录下properties文件的常见方式
- SpringBoot实现本地上传文件到resources目录
- SpringBoot读取resource目录下文件失败的原因及解决方案
- SpringBoot如何读取resources目录下的文件
相关文章
Java基于redis和mysql实现简单的秒杀(附demo)
这篇文章主要介绍了Java基于redis和mysql实现简单的秒杀(附demo),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2021-02-02
Logger.getLogger()与LogFactory.getLog()的区别详解
LogFactory来自common-logging包。如果用LogFactory.getLog,你可以用任何实现了通用日志接口的日志记录器替换log4j,而程序不受影响2013-09-09
SpringBoot定时任务两种(Spring Schedule 与 Quartz 整合 )实现方法
本篇文章主要介绍了SpringBoot定时任务两种(Spring Schedule 与 Quartz 整合 )实现方法,详细的介绍了Spring Schedule 与 Quartz 整合的两种方法,有兴趣的可以了解一下。2017-03-03


最新评论