springboot 中 @ConditionalOnExpression注解 在特定情况下使用相关配置或者实例化bean

示例:

需要实例化的bean,请不要加@Component注解

1
2
3
4
5
6
7
8
9
10
public class TestBean {

public TestBean(){

}

public doSomeThing(){

}
}

配置类:

1
2
3
4
5
6
7
8
@Configuration
@ConditionalOnExpression("${test.enabled:true}")
public class TestConfiguration {
@Bean
public TestBean testBean() {
return new TestBean();
}
}

配置文件:

1
test.enabled: true

这个bean只有在test.enabled: true的时候才会进行初始化。

查看评论