关于@ConditionalOnProperty 两个重要属性使用(已测试)

结论:

  1. matchIfMissing=false and havingValue=“” (这是两个属性的默认值):
    my.website即Property对应的值不为false,条件匹配,配置类会注入到容器中.
    my.website即Property对应的值为false 或 Property不存在时,条件不匹配,配置类不会注入到容器中.

  2. matchIfMissing=false and havingValue != “”:
    my.website即Property对应的值等于havingValue的值,条件匹配,配置类会注入到容器中.
    my.website即Property对应的值不等于havingValue的值 或 Property不存在,条件不匹配,配置类不会注入到容器中.

  3. matchIfMissing=true and havingValue=“”:
    my.website即Property对应的值不为false 或 Property不存在,条件匹配,配置类会注入到容器中.
    my.website即Property对应的值为false时,条件不匹配,配置类不会注入到容器中.

  4. matchIfMissing=true and havingValue != “”:
    my.website即Property对应的值等于havingValue的值 或 Property不存在,条件匹配,配置类会注入到容器中.
    my.website即Property对应的值不等于havingValue的值,条件不匹配,配置类不会注入到容器中.

下面是案例,可以自己创建文件测试一下

// 一.配置类
@Configuration
@ConditionalOnProperty(name = "my.website",matchIfMissing = true,havingValue = "true")
public class BeanConfig4 {
}


// 二.主程序
public class MainApp {

    public static void main(String[] args) {

        //启动springboot应用程序/项目
        ConfigurableApplicationContext ioc =
                SpringApplication.run(MainApp.class, args);
        
        BeanConfig4 beanConfig4 = ioc.getBean(BeanConfig4.class);
        System.out.println("beanConfig4 = " + beanConfig4);

    }
}

// 三.application.properties    
#my.website=www.bilibili.com
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值