controller层@ConditionalOnMissingBean
时间: 2024-10-31 22:08:27 浏览: 4
`@ConditionalOnMissingBean`是Spring框架的一个注解,用于条件化配置bean。当你在一个@Configuration类的方法上使用这个注解时,它会检查是否存在某个指定类型的bean。如果该类型的bean不存在(即缺失),那么该配置方法生成的bean才会被注册到应用上下文中。这常用于避免创建多余的bean实例,尤其是在依赖注入环境下,确保只有一个特定组件的存在。
例如:
```java
@Configuration
public class AppConfig {
@ConditionalOnMissingBean(MyService.class)
public MyService createMyServiceIfNotExists() {
return new MyServiceImpl();
}
}
```
在这个例子中,如果应用上下文中还没有`MyService`类型的bean,`createMyServiceIfNotExists`方法的返回值会被自动注册为`MyService` bean。如果有,则不会再次创建。
阅读全文