profile代码,profile用法
@Profile:春天为我们提供的可以根据当前环境,动态的激活和切换一系列组件的功能;
写爬虫互联网协议(互联网协议)被封了怎么解决?立即使用
开发环境发展,测试环境测试,生产环境掌握
数据源:(/dev) (/test) (/master)
@个人资料:指定组件在哪个环境的情况下才能被注册到容器中,不指定,任何环境下都能注册这个组件
1) 加了环境标识的豆子,只有这个环境被激活的时候才能注册到容器中。默认是系统默认值环境
2) 写在配置类上,只有是指定的环境的时候,整个配置类里面的所有配置才能开始生效
包com。春天。配置;
导入Java。豆子。propertyvetoexception
导入javax。SQL。数据来源;
导入org。spring框架。豆子。工厂。注释。价值;
导入组织。spring框架。语境。嵌入式embeddedvalueresolveraware
导入org。spring框架。语境。注释。豆;
导入org。spring框架。语境。注释。配置;
导入org。spring框架。语境。注释。简介;
导入org。spring框架。语境。注释。财产来源;
导入org。spring框架。util。stringvalueresolver
导入com。m零钱。v2。c3p 0。combobooleddatasource
/**
*简介:
*春天为我们提供的可以根据当前环境,动态的激活和切换一系列组件的功能;
*
* 开发环境发展,测试环境测试,生产环境掌握
* 数据源:(/dev) (/test) (/master)
*
* @个人资料:指定组件在哪个环境的情况下才能被注册到容器中,不指定,任何环境下都能注册这个组件
*
* 1) 加了环境标识的豆子,只有这个环境被激活的时候才能注册到容器中。默认是系统默认值环境
* 2) 写在配置类上,只有是指定的环境的时候,整个配置类里面的所有配置才能开始生效
*
*/
@ property source( class path:/dbconfig。属性’)
@配置
公共类MainConfigOfProfile实现嵌入式ValueResolverAware{
@Value(${db.user} )
私有字符串用户;
私有字符串驱动程序类;
@个人资料(默认)
@Bean(测试)
公共数据源测试数据源(@ Value($ { db。密码} )字符串密码)抛出PropertyVetoException {
comboboleddatasource数据源=new comboboleddatasource();
dataSource.setUser(用户);
数据源. setPassword(密码);
数据来源。setdriverclass(驱动程序类);
返回数据源;
}
@个人资料(“开发”)
@Bean(dev )
公共数据源开发数据源(@ Value($ { db。密码} )字符串密码)抛出PropertyVetoException {
comboboleddatasource数据源=new comboboleddatasource();
dataSource.setUser(用户);
数据源. setPassword(密码);
数据来源。setdriverclass(驱动程序类);
返回数据源;
}
@个人资料(主人)
@Bean(主人)
公共数据源主数据源(@ Value($ { db。密码} )字符串密码)抛出PropertyVetoException {
comboboleddatasource数据源=new comboboleddatasource();
dataSource.setUser(用户);
数据源. setPassword(密码);
数据来源。setdriverclass(驱动程序类);
返回数据源;
}
public void setEmbeddedValueResolver(StringValueResolver resolver){
字符串驱动程序class=resolver。resolvestringvalue($ { db。驱动程序类}”);
这个。驱动类=驱动类;
}
}包com。春天。测试;
导入Java。util。数组;
导入javax。SQL。数据来源;
导入org。朱尼特。测试;
导入组织。spring框架。语境。注释。annotationconfigapplicationcontext;
导入com。春天。配置。mainconfigofprofile
公共类IOCTestProfile {
//1.使用命令行动态参数:在虚拟机参数位置加载-Dspring.profiles.active=test
//2.使用代码的方式激活某种环境;
@测试
公共void test01() {
AnnotationConfigApplicationContext应用程序上下文=new AnnotationConfigApplicationContext(mainconfigofprofile。类);
//1.创建一个应用程序上下文
//2.设置需要激活的环境
应用程序上下文。获取环境().setActiveProfiles(dev , master );
//3.注册主配置类
应用程序上下文。注册(mainconfigofprofile。类);
//4.启动刷新容器
应用程序上下文。刷新();
string[]beanNamesForType=应用程序上下文。getbeannamesfortype(数据源。类);
系统。出去。println(数组。tostring(beanNamesForType));
应用程序上下文。close();
}
@测试
公共void test02() {
AnnotationConfigApplicationContext应用程序上下文=new AnnotationConfigApplicationContext(mainconfigofprofile。类);
string[]beanNamesForType=应用程序上下文。getbeannamesfortype(数据源。类);
系统。出去。println(数组。tostring(beanNamesForType));
应用程序上下文。close();
}
}以上就是@个人资料注解详解的详细内容,更多请关注我们其它相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。