首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >@Conditional 条件装配的解释

@Conditional 条件装配的解释

作者头像
名字是乱打的
发布2021-12-23 18:01:22
发布2021-12-23 18:01:22
4570
举报
文章被收录于专栏:软件工程软件工程

@Conditional 条件装配:满足Conditional指定的条件,则进行组件注入

可以用于类上也可以用于方法上

如下图control+h打开@condition继承树可以看到有许多实现

具体释义可以看下图

如果要具体使用某一个注解达到条件注入的目的,还请大家自行百度 这里仅提供一个@ConditionalOnProperty的使用

代码语言:javascript
复制
@Retention(RetentionPolicy.RUNTIME)
@Target({ ElementType.TYPE, ElementType.METHOD })
@Documented
@Conditional(OnPropertyCondition.class)
public @interface ConditionalOnProperty {

    // 数组,获取对应property名称的值,与name不可同时使用
    String[] value() default {};

    // 配置属性名称的前缀,比如spring.http.encoding
    String prefix() default "";

    // 数组,配置属性完整名称或部分名称
    // 可与prefix组合使用,组成完整的配置属性名称,与value不可同时使用
    String[] name() default {};

    // 可与name组合使用,比较获取到的属性值与havingValue给定的值是否相同,相同才加载配置
    String havingValue() default "";

    // 缺少该配置属性时是否可以加载。如果为true,没有该配置属性时也会正常加载;反之则不会生效
    boolean matchIfMissing() default false;

}

https://www.cnblogs.com/secbro/p/12011522.html

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/2/21 下,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档