【发布时间】:2013-08-08 17:13:17
【问题描述】:
我们使用Guice Persist在我们的项目中注入EntityManager。
例如
public class MyDao{
@Inject
EntityManager em;
public void someMethod(){
//uses em instance
}
}
但我们不清楚EntityManager 的注入实例将如何使用。
-
这是什么类型的EntityManager?(参见例如:types of entity managers)Guice Persist 通过
EntityManagerFactory.createEntityManager()实例化它,所以我会说它是应用程序管理的实体管理器。但是在official Wiki 中,他们写了seesion-per-transaction 策略,这表明 EntityManager 是(伪)事务范围的。 - 我们是否应该手动调用 close() ?还是 Guice 会处理它?
-
first level cache 的范围是什么? 仅单个事务(如在事务范围的实体管理器中)或只要我使用
EntityManager的相同注入实例(如在应用程序管理的实体管理器中) ?
【问题讨论】:
标签: jpa guice entitymanager guice-persist