profile & environment
13 环境的抽象
容器中集成了抽象的环境接口
Environment,用来对两个关键起作用:profiles
和properties
profile
是对一堆bean配置的逻辑分类。Bean会被绑定到一个profile
中去。Environment对象与profile管理,确定哪个profile会被最终使用。
properties
在几乎所有应用程序中都起着重要作用,并且可能源自各种来源:属性文件,JVM系统属性,系统环境变量,JNDI,Servlet上下文参数,临时属性对象,Map对象等。环境对象与属性有关的作用是为用户提供方便的服务界面,用于配置属性源并从中解析属性。
13.1 Bean 定义的Profiles
Bean 定义 Profile文件可以提供一个构建mechanism在核心容器,用来在不同环境里定义不同的Bean。
- 在开发中针对内存中的数据源进行工作,而不是在进行QA或生产时从JNDI查找相同的数据源。
- 仅在将应用程序部署到演示环境中时注册基础设施。
- 注册自定义的bean的时候
演示:手动编码
考虑以下数据源的创建
现在考虑应用如何被部署到QA环境或者生产环境。假定数据源和JDNI目录一同注册。所以如下手动的去配置属性文件
考虑一下如何切换的问题,之前以xml的方式用${placeholder}的来切换。
使用@Profile
类级别
&