我正在尝试为一些基本的Google App Engine服务编写一个Spring配置。特别是对于EntityManagerFactory和实体管理器。
要从Java代码创建EntityManagerFactory:
EntityManagerFactory emfInstance = javax.persistence.Persistence
.createEntityManagerFactory("transactions-optional");我把它翻译成:
<bean id="entityManagerFactory" class="javax.persistence.Persistence"
factory-method="createEntityManagerFactory" scope="singleton">
<constructor-arg value="transactions-optional"/>
</bean>每次我需要EntityManager的时候
EntityManager em = emfInstance.get().createEntityManager(); 但我不知道如何告诉将工厂方法应用于之前创建的工厂。
<bean id="entityManagerProto"
factory-method="createEntityManager" scope="prototype"/>有人知道吗?谢谢。
发布于 2011-12-01 03:29:26
您可以使用现有的bean作为工厂,如下所示:
<bean id="entityManagerProto"
factory-bean = "entityManagerFactory"
factory-method="createEntityManager" scope="prototype"/> 此外,我不确定它是否可以在GAE上工作,但也许使用LocalEntityManagerFactoryBean会更好,并使用@PersistenceContext注入EntityManager。
https://stackoverflow.com/questions/8331512
复制相似问题