何时使用spring注解@Bean
声明一些实例,参数是注入(inject)的,这些都是必需的,如果找不到实例,会抛出NoSuchBeanException。
如何将其设为可选?类似 @Autowired(required = false)
例如
@Configuration
class SomeConfiguration {
@Bean
public SomeComponent someComponent(Depend1 depend1,
Depend2 depend2) {
SomeComponent someComponent = new SomeComponent();
someComponent.setDepend1(depend1);
if (depend2 != null) {
someComponent.setDepend2(depend2);
}
return someComponent;
}
}
最佳答案
只需使用可选
:
@Bean
public SomeComponent someComponent(Depend1 depend1, Optional<Depend2> depend2) {
...
}
关于java - 如何在Spring中的@Bean方法中定义可选参数(依赖项)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46704950/