处理EntityManager

处理EntityManager

问题描述:

我是新来的JPA 2,我想找出哪些是对RESOURCE_LOCAL与JTA处理的EntityManager的最佳实践。从我读过的,我应该可以做一个依赖注入,但我不太明白。处理EntityManager

我使用的EclipseLink作为实现。

+0

你读过此链接:http://docs.oracle.com/cd/B32110_01/web.1013/b28221/usclient003.htm你恰好具有 – melihcelik 2012-01-05 11:01:50

+0

什么问题?你可以直接在你的代码中注入一个EntityManager,但是有几个问题需要注意。请修改您的问题以包含具体的错误或问题。 – Perception 2012-01-05 11:52:11

+0

@Perception我不使用EJB,所以我不知道如何使这些注射。请指教... – Dragos 2012-01-05 12:33:43

要在你的bean获得对EntityManager的一个参考,使用下面的注解:如果你不使用EJB

@PersistenceContext 
private EntityManager entityManager; 

或者:

EntityManagerFactory entityManagerFactory = Persistence.createEntityManagerFactory("myPersistenceUnitName"); 
EntityManager entityManager = entityManagerFactory.createEntityManager(); 
//Do some work... 
entityManager.close(); 
entityManagerFactory.close(); 

为RESOURCE_LOCAL的VS JTA的说明,请参见Persistence unit as RESOURCE_LOCAL or JTA?

+0

我不使用EJB。应用程序在何处以及如何找到正确的EntityManager? – Dragos 2012-01-05 12:30:00

+0

然后,你必须使用javax.persistence.EntityManagerFactory(答案编辑) – Andre 2012-01-05 12:54:00