创建entitymanager的最佳实践

aye*_*gin 4 java jsf hibernate jpa

我正在使用资源本地实体管理器与JPA 1.创建EntityManager的最佳实践是什么?

  1. 每次创建工作关闭实体管理员.(实体管理员不重,但仍然无聊)

  2. 为每个线程创建一个实体管理器并将其存储为ThreadLocal变量并使用它(a-应该关闭entitymanager b-会话范围bean中存储的任何实体将是一个分离的实体,因为entitymanager其持久化上下文中的哪个实体关闭或属于另一个线程现在.)

  3. 将实体管理器存储在会话bean中并在会话期间使用相同的实体管理器(Sessions unawere of each others)

Mat*_*all 5

您应该EntityManager使用@PersistenceContext注释注入.不要担心它来自哪里 - 这是工作中的依赖注入.