在Spring中为MethodInvokingFactoryBean设置Singleton属性为False

时间:2014-12-21 13:33:04

标签: java spring java-ee javabeans spring-bean

我有一个原型bean'客户端'我想称之为方法' addHandler'每次实例化。我正在使用' MethodInvokingFactoryBean'为了这。我docs,我可以看到默认情况下MethodInvokingFactoryBean以单例方式运行并缓存' getObject'的结果。在随后的电话中返回。

为了避免这种情况,我想打电话给'SetSingleton'与' false'。我不确定如何做到这一点。

    <bean id="provider" class="com.example.credProvider">
        <constructor-arg value="key1"/>
    </bean>

    <bean id="handler" class="com.example.Handler"/>

    <bean id="client" class="com.example.DBClient" scope="prototype">
        <constructor-arg><ref local="provider"/></constructor-arg>
        <property name="endpoint" value="http://xyz:8080/" />
    </bean>

    <bean class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
        <property name="targetObject"><ref local="client"/></property>
        <property name="targetMethod"><value>addHandler</value></property>
        <property name="arguments">
            <ref local="handler" />
        </property>
    </bean>

将添加范围=&#34;原型&#34;喜欢这样的帮助? -

<bean class="org.springframework.beans.factory.config.MethodInvokingFactoryBean" scope="prototype">
...
</bean>

0 个答案:

没有答案