我正在考虑在一个新的应用程序中使用Spring,但我很难找到创建应用程序bean的最佳方法。
在较高级别上,这将是一个web应用程序,它可以具有相同类型的一个或多个beans -每个bean具有不同的属性值。如果需要添加相同类型的新bean,则只需配置它。通常,如果我使用Spring,我只需在应用程序上下文中定义每个bean,并通过一个上下文文件加载属性值。Spring更喜欢使用xml配置,但我不知道如何将bean定义转换为Spring解决方案。如何仍然利用使用Spring的IoC。
发布于 2016-10-12 14:31:16
实际上,这与Spring无关。正如您所提到的,它支持Java和XML配置。
您可以使用Java配置轻松地在同一个类中创建多个bean。
XML配置类似于:
<bean id="first" class="com.foo.MyClass" />
<bean id="second" class="com.foo.MyClass" />翻译为:
@Configuration
class MyConfiguration {
@Bean
MyClass first() {
return new MyClass();
}
@Bean
MyClass second() {
return new MyClass();
}
}发布于 2017-11-08 13:48:48
有了Maciej Walkowiak的回答,我们还可以这样写:
@Configuration
class MyConfiguration {
@Bean
@Qualifier("first")
MyClass first() {
return new MyClass();
}
@Bean
@Qualifier("second")
MyClass second() {
return new MyClass();
}
}然后,当你自动使用时,你可以使用:
@Autowired
@Qualifier("second")
private MyClass myClass;https://stackoverflow.com/questions/37218985
复制相似问题