spring-boot 如何加载rsources下面的自定义配置文件 财富值69

2016-10-13 11:22发布

默认的spring boot项目目录架构,在resources文件夹下面创建一个parkSpace.properties配置文件,但是,我现在使用代码:
InputStream in = new BufferedInputStream(new FileInputStream(“parkSpace.properties”));
启动项目执行到这里的时候,并不能找到这个文件,请问这种具体的路径该怎么填写才能让FileInputStream找到文件路径呢 谢谢

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
13条回答

有两种方式,一种是通过@PropertySource注解,然后使用@Value逐个注入配置。

@PropertySource

classpath:parkSpace.properties 该文件存在于CLASSPATH的根目录,如果你的文件在CLASSPATH中是有目录的,这里也需要加上如classpath:resource/parkSpace.properties
如何辨别文件所在的CLASSPATH

查看输出classes中文件所在的位置

properties配置

mishen - whatsns产品经理
6楼-- · 2016-10-13 11:47

另外一种方式是通过@ConfigurationProperties注解,通过getter、setter方法注入及获取配置。

此处可以在spring boot加载完后执行一些代码

这种能获取到配置文件,但是我的初衷是通过在启动的时候只加载一次这个配置文件,而不是每次调用方法的时候都加载一次,然后我找了一下spring boot的一个初始化加载文件成功,但是我还是想在静态代码块或者静态方法里执行加载配置文件,暂时没找到解决办法。

Resources.getResource("parkSpace.properties")

org.springframework.util.ResourceUtils.getURL("classpath:parkSpace.properties")
试试上面的代码吧。

一周热门 更多>