<bean id="data.emf"
class="org.springframework.orm.jpa.LocalEntityManagerFactoryBean" >
<property name="persistenceUnitName" value="transactions-optional" />
</bean>
据我所知,默认情况下所有bean都是单例的(根据文档),但我仍然以某种方式重复创建entitymanagerfactory。在 Spring 3.0 中,我可以为上面的 bean 设置任何参数来强制单例吗?该问题仅出现在gae生产中,在托管模式下没有问题
最佳答案
你可以像这样强制一个 bean 成为单例:
<bean scope="singleton" ... >
</bean>
但是,您通常不需要这样做,因为 singleton
是默认范围,并且无法更改默认范围。
每次实例化 bean 时,Spring DEBUG 级别的日志都会生成条目,因此请查看那里以了解您的 bean 何时何地被处理。
关于java - spring 3.0强制单例bean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2101019/