如何读取resources文件夹下的配置文件?
这篇文章主要讲述读取resources文件夹下的配置文件,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
目录
- 读取一般有两种读取:
- 1、根据相对路径直接读取
- 2、通过ClassLoader来读取
假如我想要获取resources下的bean.properties文件,properties是以key,value形式存储,以下为文件内容。
读取一般有两种读取:
1、根据相对路径直接读取
InputStream inputStream = new FileInputStream("src/main/resources/bean.properties");
Properties properties = new Properties();
properties.load(inputStream);
Enumeration<Object> keys = properties.keys();
2、通过ClassLoader来读取
//实例化对象
Properties props = new Properties();
//获取properties文件的流对象,这两种都是可以的,都是通过ClassLoader来读取项目路径下的资源
InputStream in = Thread.currentThread().getContextClassLoader().getResourceAsStream("bean.properties");
InputStream in = this.getClass().getClassLoader().getResourceAsStream("bean.properties");
props.load(in);
//取出配置文件中所有的Key
Enumeration keys = props.keys();
假如要读取这张照片:
InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("templates/kjcgdjzs.png");
一般情况下不建议使用第一种,一般项目放到服务器解压之后他都会变成\WEB-INF\classes路径下,所以写相对路径也不是很好,绝对路径的话,linux服务器,不一定会有盘符。所以我们可以采用第二种获取方式。
小好好起来了: 密匙还是生成不了哇
暄风迟日: 你好 请问这个问题现在解决了吗
lunaw-666: 最近正在学习自动配置的原理,这篇文章解答了我很多困惑,谢谢博主!
All we know938: 你好,请问能给个源码吗
m0_73518457: 写的很详细