从Hibernate会话获取EntityManager

jak*_*etr 5 java hibernate jpa

我已经在Hibernate上构建了我的应用程序,但是现在我需要为一个第三方模块获取EntityManager。

您能否给我一些提示,如何从Hibernate获取JPA对象?

(就我而言,我有SessionFactory并需要EntityManager)

Sun*_*l S 7

我在 Hibernate 5.2 中找到了这个

 Session session = HibernateUtil.getSessionFactory().openSession();
 EntityManager em = session.getEntityManagerFactory().createEntityManager();
Run Code Online (Sandbox Code Playgroud)

  • 这仅适用于 5.2 或更高版本。Hibernate 5.0 的`Session` 不扩展`EntityManager` 或`HibernateEntityManager `(https://docs.jboss.org/hibernate/orm/5.0/javadocs/org/hibernate/Session.html)。 (6认同)
  • 有没有办法为hibernate 4做到这一点?由于其他原因,我被困在那里。 (4认同)
  • `@Sunil S`你是对的。我错了。getEntityManagerFactory 是 Hibernate 5 的 org.hibernate.Session 的一个方法。稍后我会投票。 (2认同)