关于Springboot打成JAR包后读取外部配置文件的问题

Springboot的默认配置文件为:application.properties或者是application.yml

如果这两个配置文件都存在,不冲突的话,就互相补充。冲突的话,则properties优先级高。

当我们使用IDEA创建出一个Springboot项目上时,配置文件默认出现在classpath(也就是项目里的resources)目录下。

Springboot的application.properties配置文件的加载路径优先级(从高到低):

工程根目录:./config/
工程根目录:./
classpath:/config/
classpath:/

当Springboot打成JAR包(不包含配置文件),读取外部配置文件application.properties时,可以选择:
1、把application.properties放在在项目名.jar的同级目录下

2、在项目名.jar同级目录,创建一个config文件夹,把application.properties放进去。

以上仅针对application.properties这种Spriingboot默认配置文件。

当配置了一些其他的非application.properties配置文件,需要读取配置文件里的信息时,进行如下配置:
1、如果非application.properties配置文件,配置在了项目中的resource目录下,某个类读取配置文件里的信息时使用

@PropertySource(value = “classpath:xxx.properties”)

2、如果非application.properties配置文件,配置在了jar包外的目录下,某个类读取配置文件里的信息时使用

@PropertySource(value = “file:./config/timing.properties”)

此时,xxx.jar包同级目录下新建一个config文件夹,里边放了配置文件timing.properties

到此这篇关于关于Springboot打成JAR包后读取外部配置文件的问题的文章就介绍到这了,更多相关Springboot读取外部配置文件内容请搜索呐喊教程以前的文章或继续浏览下面的相关文章希望大家以后多多支持呐喊教程!

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。