如果这两个配置⽂件都存在,不冲突的话,就互相补充。冲突的话,则properties优先级⾼。
当我们使⽤IDEA创建出⼀个Springboot项⽬上时,配置⽂件默认出现在classpath(也就是项⽬⾥的resources)⽬录下。
baby素颜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读取外部配置⽂件内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!
发布评论