首页 > 其他 > 详细

@Conditional注解

时间:2019-10-14 14:28:23      阅读:69      评论:0      收藏:0      [点我收藏+]

根据条件动态创建bean 

 

public class TestConditon implements Condition {
    public boolean matches(ConditionContext context, AnnotatedTypeMetadata metadata) {
        //获取IOC容器使用的BeanFactory
        ConfigurableListableBeanFactory beanFactory=context.getBeanFactory();
        //获取类加载器
        ClassLoader classLoader=context.getClassLoader();
        //获取资源加载器
        ResourceLoader resourceLoader = context.getResourceLoader();
        //获取系统环境
        Environment environment = context.getEnvironment();

        String osName = environment.getProperty("os.name");
        if (osName.contains("Windows")){
            return true;
        }
        return false;
    }
}

是windows系统才创建Bean

@Configuration
public class MainConfig {
    @Conditional(TestConditon.class)
    @Bean
    public Person person(){
        return new Person();
    }
}

 

@Conditional注解

原文:https://www.cnblogs.com/qin1993/p/11670898.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!