Environment 接口是集成在容器中的一个抽象,它对应用环境的两个关键方面进行建模:配置文件(profiles) 和 属性(properties)。
配置文件是一个命名的、逻辑上的 bean 定义组,只有在给定的配置文件处于活动状态时才会被注册到容器中。无论是用 XML 定义的还是用注解定义的,Bean 都可以被分配给一个配置文件。环境对象在配置文件方面的作用是 确定哪些配置文件(如果有的话)是当前活动的,以及哪些配置文件(如果有的话)应该是默认活动的。
属性在几乎所有的应用程序中都扮演着重要的角色,它可能来自各种来源:属性文件、JVM 系统属性、系统环境变量、JNDI、Servlet 上下文参数、特设的属性对象、Map 对象等等。与属性有关的环境对象的作用是为用户提供一个方便的服务接口,用于配置属性源并从它们那里解析属性。