Spring Condition 注解
时间: 2024-05-01 20:22:47 浏览: 15
Spring的Condition注解是用来在配置类中根据一定条件决定是否创建某个Bean的注解。它可以与@Bean注解一起使用,用于控制Bean的创建。
常用的Condition注解有:
1. @ConditionalOnBean:当容器中存在指定Bean时,才会创建当前Bean。
2. @ConditionalOnMissingBean:当容器中不存在指定Bean时,才会创建当前Bean。
3. @ConditionalOnClass:当类路径下存在指定的类时,才会创建当前Bean。
4. @ConditionalOnMissingClass:当类路径下不存在指定的类时,才会创建当前Bean。
5. @ConditionalOnProperty:当指定的配置项存在时,才会创建当前Bean。
6. @ConditionalOnExpression:当指定的SpEL表达式为true时,才会创建当前Bean。
使用示例:
```java
@Configuration
public class MyConfig {
@Bean
@ConditionalOnBean(DataSource.class)
public MyBean myBean() {
return new MyBean();
}
}
```
上述代码中,@ConditionalOnBean注解表示只有当容器中存在DataSource类的Bean时,才会创建MyBean类的Bean。如果容器中不存在DataSource类的Bean,则不会创建MyBean类的Bean。