java单例bean在Spring MVC中多次实例化?
有人知道为什么这个bean会被多次实例化吗?我只想要它的一个实例,但每次控制器运行时,都会再次调用construcutor
以下是我的应用程序上下文中的定义。xml
<bean id="DiameterClient" class="com.rory.diameter.client.DiameterClient" scope="singleton" init-method="start">
<constructor-arg type="java.lang.String" index="0"><value>${pcca.host}</value></constructor-arg>
<constructor-arg index="1"><value>${pcca.port}</value></constructor-arg>
<constructor-arg index="2" value="com.openwave.djgx.message"/>
<constructor-arg index="3" value="com.openwave.djgx.avp"/>
</bean>
在我的控制器中,我正在使用它——我想这只会得到DiameterClient类的一个实例,但每次下面的代码运行时,它都会调用它的构造函数——非常感谢您的帮助:
BeanFactory factory = new ClassPathXmlApplicationContext("applicationContext.xml");
DiameterClient diameterClient = (DiameterClient)factory.getBean("DiameterClient");
diameterClient.send(aar);
注意,DiameterClient不是我的类,我不想编辑它,只想每个应用程序有一个全局实例。另外请注意,DiameterClient扩展线程-不确定这是否重要
共 (0) 个答案