SpringBoot04-多环境配置及配置文件位置
【为什么要使用多环境呢?】
因为在实际的开发环境中在项目开发的不同阶段,选用的环境配置也不一样,不可能每次都次修改原有的配置,所以我们需要为不同的开发环境配置不同的环境,并在使用到不同的环境的时候进行环境的切换。
【1】配置文件可以配置的位置?
以下是可以进行配置文件的位置,并以优先级从高到低进行排序
1. file: ./config/ 【在项目路径下直接创建一个config目录,内放置 配置文件,这个目录和src目录同级】(优先级最高)
2. file: ./ 【直接在项目下创建一个配置文件】 (优先级第2)
3. classpath: ./config/ 【在src/resources目录下,即类加载路径下创建一个config目录,内包含配置文件】 (优先级第3)
4. classpath: ./ 【在src/resources目录下,直接创建配置文件】 (优先级最低)【springboot文件默认的配置文件位置】
当高优先级和低优先级的配置相同时,优先级高的会覆盖优先级较低的,其他的不同配置两者进行互补配置。
【不同配置环境之间如何切换?】
*不同的配置环境可以写在一个配置文件中,也可以将不同的配置环境写在不同的配置文件中。
1.【单文件,多配置】(yaml)
多个配置环境写在同一个yaml文件中,使用【---】进行分隔
问题1:怎么区分一个文件中的多个配置环境呢?----我们为每个环境取一个名字##这里的profile属性配置环境的名称
【
spring:
profile: xxx
】
问题2:怎么进行切换呢?还是对一个属性进行修改,active:类似激活的意思,千万别忘了空格!!!
【
spring:
profiles:
active: xxx
】
例子:
server:
port: 8088
spring:
profiles:
active: test
---
server:
port: 8081
spring:
profile: test
【多环境,多文件】
问题1:怎么区分环境呢?答:取名字
怎么取名字呢?答:和单文件不同,我们在文件名上进行取名
默认的配置文件:application.yaml(properties)
其他的配置文件:application-xxx.yaml(properties)
【注意:这里的xxx就是为这个环境取的名字,切换的时候也就是用它】
问题2:怎么切换环境呢?答:和单文件中切换相同,指定active属性的值就行了
spring:
profiles:
active: xxx
#注意这里的xxx就是之前我们在文件名上指定的文件名application-xxx.yaml(properties)