是否可以加载一个bean(范围“原型(prototype)”),告诉Spring使用特定的依赖项来创建它?
示例:
- 依赖项“StoreA”和“StoreB”
- 我想要加载的bean,“Service”
我可以告诉 Spring 有时使用“StoreA”加载“Service”,有时使用“StoreB”加载“Service”吗?
实际上,我找到的唯一解决方案是加载两个不同的应用程序上下文,每个应用程序上下文都有一组通用的 <include .../>
指令和我声明存储的特定指令(因此每个应用程序上下文都有一个存储声明)。我可以使用单个应用程序上下文做同样的事情吗?
最佳答案
您可以使用它们的 id 引用特定的 bean,因此当 Autowiring 时使用
@Qualifer("someBeanId")
或者在 spring 上下文中使用 'ref'/'ref-local'
关于java - Spring,加载具有特定依赖的bean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16086186/