几乎所有架构都有一个自己的
Environment
类,因为所有架构都需要支持多环境。
多环境的好处在于在不修改代码的基础上,只需要通过切换环境,就可以实现定制化功能。
- 不同的环境,不同的配置。
比如:SpringBoot 应用可以根据环境不同,读取相应的 application-${profile}.properties
文件
- 不同的环境,不同的实现逻辑。
比如:SpringBoot 应用可以通过 @Profile
注解声明 Bean 的可用环境,这样应用启动时,会根据环境不同加载不同的 Bean
索引
Environment
Spring
也有一个 Environment
类,并为其赋能了两个基本功能
- 管理当前环境
- 根据当前环境加载相应的配置
Environment
提供了三个方法,都是管理环境用的,加载配置的方法则全部在其父接口中定义
public interface Environment extends Prop