SpringBoot复习:(19)Condition接口和@Conditional注解

Condition接口代码如下:

public interface Condition {

	boolean matches(ConditionContext context, AnnotatedTypeMetadata metadata);

}

它是一个函数式接口,只有一个方法matches用来表示条件是否满足。matches方法中的ConditionContext类对象context可以通过getEnvironment方法获取环境对象。

@Conditional是一个注解:

public @interface Conditional {

	Class[] value();

}

它包含了一个Condition类型Class的数组。
@Conditional注解可以把多个实现了Condition接口的类对象聚合起来,只有所有的Condition类对象matches方法都返回ture时,和@Conditional一起配合使用的@Bean注解下的方法返回的bean才会被注入到容器。

你可能感兴趣的:(SpringBoot,spring,boot,java,rpc)