1.注解模式
在application.properties配置active (可以配置公用配置)
这个是正常配置生效方式
spring.profiles.active=test (可以添加多个,用逗号隔开)
对应的配置文件为application-test.properties
或
@Configuration
@Profile("test")
@Profile("test","prod")
//非测试环境生效
@Profile("!test")
2、xml模式
<beans profile="app">
</beans>
<beans profile="test">
</beans>
手工调用???
public static void main(String[] args) {
AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext();
ctx.getEnvironment().setActiveProfiles("app");
ctx.register(AppConfig.class,TestConfig.class);
ctx.refresh();
String[] definitionNames = ctx.getBeanDefinitionNames();
for (String string : definitionNames) {
System.out.println(string);
}
}