SpringBoot读取resources下的文件以及resources的资源路径

简介: SpringBoot读取resources下的文件以及resources的资源路径

1.这种可以 但是在容器中获取不到(以下几种都可以只要不在容器)。

InputStream  inputStream = this.getClass().getResourceAsStream("/static/imgs/aha.png");

 

Properties pps = new Properties();
File file = ResourceUtils.getFile("classpath:defult.properties");
pps.load(new FileReader(file));

 

Properties pps = new Properties();
InputStream stream = getClass()
                    .getClassLoader()
                    .getResourceAsStream("defult.properties"); 
BufferedReader br = new BufferedReader(new InputStreamReader(stream, "UTF-8"));
pps.load(br);
//获取resources下文件夹路径
File directory = new File("../项目名/src/main/resources");
String reportPath = directory.getCanonicalPath();
String resource =reportPath+"\\files\\**";
//resource就是所需要的路径 eg: resource="D:\项目名\src\main\resources\files\****"

 

2.容器和服务器中都可以获取

package com.bme.shed.service;
 
 
 
import com.bme.shed.BmeShedSimulateServiceApplication;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.core.io.Resource;
import org.springframework.core.io.ResourceLoader;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.junit4.SpringRunner;
 
 
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
 
 
@RunWith(SpringRunner.class)
@SpringBootTest
public class RcvCentInfoParse {
 
    @javax.annotation.Resource
    ResourceLoader resourceLoader;
 
    @Test
    public void testReaderFile() throws IOException {
        Resource resource = resourceLoader.getResource("classpath:dsp.json");
        InputStream is = resource.getInputStream();
        InputStreamReader isr = new InputStreamReader(is);
        BufferedReader br = new BufferedReader(isr);
        String data = null;
        while((data = br.readLine()) != null) {
            System.out.println(data);
        }
 
        br.close();
        isr.close();
        is.close();
    }
 
 
}


相关文章
|
2月前
|
Java 应用服务中间件
SpringBoot获取项目文件的绝对路径和相对路径
SpringBoot获取项目文件的绝对路径和相对路径
151 1
SpringBoot获取项目文件的绝对路径和相对路径
|
2月前
|
存储 前端开发 JavaScript
springboot中路径默认配置与重定向/转发所存在的域对象
Spring Boot 提供了简便的路径默认配置和强大的重定向/转发机制,通过合理使用这些功能,可以实现灵活的请求处理和数据传递。理解并掌握不同域对象的生命周期和使用场景,是构建高效、健壮 Web 应用的关键。通过上述详细介绍和示例,相信读者能够更好地应用这些知识,优化自己的 Spring Boot 应用。
63 3
|
2月前
|
网络协议 Java
springboot配置hosts文件
springboot配置hosts文件
61 11
|
2月前
|
存储 前端开发 JavaScript
|
2月前
|
存储 Java API
|
2月前
|
Java
SpringBoot获取文件将要上传的IP地址
SpringBoot获取文件将要上传的IP地址
48 0
|
3月前
|
缓存 Java 程序员
Java|SpringBoot 项目开发时,让 FreeMarker 文件编辑后自动更新
在开发过程中,FreeMarker 文件编辑后,每次都需要重启应用才能看到效果,效率非常低下。通过一些配置后,可以让它们免重启自动更新。
60 0
|
存储 前端开发 Java
SpringBoot文件上传和下载
SpringBoot文件上传和下载
SpringBoot文件上传和下载
|
前端开发 Java Spring
SpringBoot文件上传下载
SpringBoot文件上传下载
262 0
SpringBoot文件上传下载
|
Java
SpringBoot文件上传下载
项目中经常会有上传和下载的需求,这篇文章简述一下springboot项目中实现简单的上传和下载。 新建springboot项目,前台页面使用的thymeleaf模板,其余的没有特别的配置,pom代码如下: 4.
4155 0