Spring Boot - 多环境配置
在项目开发时,我们经常需要在不同的运行环境中进行切换,典型的场景包括: 开发环境 dev , 测试环境 test 以及 发布环境 prod 。
不同的环境可能会对应不同的配置内容,如果手动更改运行环境配置,会显得非常繁琐与低效。
因此,Spring Boot 提供了一套机制可以很容易地让我们进行多环境配置。
假设现在我们需要往返于两个运行环境: 开发环境 dev 和 测试环境 test 。
Spring Boot 提供了一套多环境配置机制,称为: Profile-specific Properties ,可以将其理解为 环境相关配置文件 。
Profile-specific Properties 多环境配置的具体步骤如下所示:
以上,我们就完成了多环境配置,运行程序,结果如下:
可以看到,成功运行在开发环境 dev 中,并且相应的配置选项也生效了。
注 :如果没有指定具体环境配置文件,那么 Spring Boot 默认加载 application-default.properties 配置文件,相当于 application.yml 默认配置选项:
除了上述最为推荐的方式进行多环境配置外,Spring Boot 还提供了许多其他方式进行配置,下面简单介绍几种:
注 :当开启了多个运行环境时,最终的配置由最后一个环境决定。
比如, spring.profiles.active 属性加载晚于 SpringApplication 相关 API 设置,因此其指定的环境配置文件中的配置生效。