通知Spring bean重新创建

时间:2014-07-03 07:39:04

标签: java spring spring-mvc

我们遇到一个问题,我们需要强制使用配置xml文件中指定的初始配置重新创建spring会话bean。

所有自动连接的依赖项应该指向新创建的bean。用Spring框架可以做到这一点吗?或者你能建议任何方法来做到这一点吗?

1 个答案:

答案 0 :(得分:0)

我建议在你的上下文中创建另一个temporary bean,并在你的条件情况下使用它。不幸的是,我将不得不调用getBean()方法来重新分配我对temp bean的引用。

例如:

在配置文件中,您必须定义两个bean:

<bean id="originalBean" class="x.y.z.MyBean" />
<bean id="temporaryBean" class="x.y.z.MyBean" />

在引用该bean的bean中,您必须使用@Qualifer

进行自动装配
@Autowired
@Qualifier("originalBean")
private MyBean myBean;

在您的条件用例中,您将重新分配对temporaryBean

的引用
if(conditioalCase) {
    myBean = ApplicationContext.getBean("temporaryBean");
}