Spring Boot外部配置文件的加载顺序
程序员文章站
2022-04-06 18:48:19
...
(1)Spring Boot也可以从以下位置加载配置文件,优先级从高到低,高优先级的配置覆盖低优先级的顺序,如何内容有不同的,会形成互补的形式
(1)命令行参数:
打包的时候只会打包main下的java和resource的一些内容,如果想要修改的话,需要重新修改配置文件,进行打包,
但是,可以采用命令行参数的形式,修改配置文件
java -jar jar包 --server.port=8087 修改端口
java -jar spring-boot-01-helloworld-quick-0.0.1-SNAPSHOT.jar --server.port=5656
如果有多个配置,以空格分开。--配置项=值
(2)来自java:comp/env的JNDI属性
(3)java系统属性(System.getProperties())
(4)操作系统环境变量
(5)RandomValuePropertySource的配置random.*属性值
由jar包外向jar包内查找,优先加载带profile的文件
(6)jar包外部的application-{profile}.properties/yml配置文件(带spring.profile)
(7)jar包外内的application-{profile}.properties/yml配置文件(带spring.profile)
(8)jar包外部的application.properties/yml配置文件(不带spring.profile)
(9)jar包内部的application.properties/yml配置文件(不带spring.profile)
(10)@Configuration注解类上的@PropertySource
(11)通过SpringApplication.setDefaultProperties指定的默认属性
推荐阅读
-
spring boot启动时加载外部配置文件的方法
-
Spring Boot项目添加外部Jar包以及配置多数据源的完整步骤
-
Spring Boot常见外部配置文件方式详析
-
使用Spring @DependsOn控制bean加载顺序的实例
-
Spring Boot加密配置文件特殊内容的示例代码详解
-
使用Spring PropertyPlaceholderConfigurer加载的配置文件加密
-
spring boot中关于获取配置文件注解的使用@ConfigurationProperties、@Value、@PropertySource
-
Spring框架中引入外部配置文件的属性值
-
带有外部Tomcat的Spring Boot
-
spring boot-2.1.16整合swagger-2.9.2 含yml配置文件的代码详解