春天3.0强迫单身豆

时间:2010-01-20 11:40:00

标签: java spring google-app-engine jpa

<bean id="data.emf"
  class="org.springframework.orm.jpa.LocalEntityManagerFactoryBean"  >
  <property name="persistenceUnitName" value="transactions-optional" />

 </bean>

从我所知的默认情况下,所有bean都是单例(根据文档),但我仍然得到重复创建entitymanagerfactory。是否有任何参数我可以在春季3.0中为bean设置强制单身?问题只出现在gae生产中,在托管模式下,没问题

2 个答案:

答案 0 :(得分:4)

您可以强制bean成为这样的单身:

<bean scope="singleton" ... >
</bean>

但是,您通常不需要这样做,因为singleton是默认范围,并且无法更改默认范围。

每次实例化bean时,Spring DEBUG级日志都会生成条目,因此请查看bean的处理时间和位置。

答案 1 :(得分:0)

可能问题不在范围内。您确定没有在程序的另一个位置(例如使用注释)或另一个上下文文件中定义另一个bean吗?注释bean定义并尝试它是否可以找到它的实例而不在此处声明它。