SpringBoot注解记录——@ConditionalOnProperty
@ConditionalOnProperty
该注解作用是根据配置文件来决定是否注入。
public @interface ConditionalOnProperty {
String[] value() default {};
String prefix() default "";
String[] name() default {};
String havingValue() default "";
boolean matchIfMissing() default false;
}
- prefix: 配置前缀
- name: 配置文件中的名称
- havingValue: 要对比的值
- matchIfMissing: 如果配置文件中没有该值时是否注入
例如:
@Configuration
@@ConditionalOnProperty(prefix="test", name="myname", havinValue="myname")
public class test{
@Bean
public void testMethod(){
//some code ...
}
}
上面的代码表示如果配置文件中test.name的值等于myname则注入该方法和类,如果不等于或者没有改配置则不注入。

浙公网安备 33010602011771号