标签:String Spring class Match context 注解 public Condition
Spring Condition注解的主要作用是根据条件给容器注入bean,简称条件注解。它是spring 4.0引入的新特性
@Component public class Cat { } @Component @Conditional(Match.class) public class Dog { } public class Match implements Condition { @Override public boolean matches(ConditionContext context, AnnotatedTypeMetadata metadata) {
return false; } } public class Test { public static void main(String[] args) { AnnotationConfigApplicationContext annotationConfigApplicationContext = new AnnotationConfigApplicationContext("com.edu.condition"); String[] beanNames = annotationConfigApplicationContext.getBeanDefinitionNames(); for(String name:beanNames){ System.out.println(name); } } }
Match 实现了Condition,重写 matches方法,当该方法返回true的时候,表示条件满足。
从参数context里面可以获取
1.context.getEnvironment() 环境信息 例如
String osName = context.getEnvironment().getProperty("os.name"); 获取操作系统名称
2.context.getRegistry() 注册的bean
3.context.getResourceLoader() 加载的资源
4.context.getBeanFactory() beanFactory
标签:String,Spring,class,Match,context,注解,public,Condition 来源: https://www.cnblogs.com/chenzhubing/p/11199110.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。