(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指定的默认属性