Get Hibernate SessionFactory from JPA's entityManagerFactory

前端 未结 4 1140
攒了一身酷
攒了一身酷 2021-02-01 05:35

I need a specific feature of hibernate that is StatelessSession and for that I need Hibernate\'s SessionFactory. The problem is I only have the entityManagerFactory. How can I g

4条回答
  •  予麋鹿
    予麋鹿 (楼主)
    2021-02-01 05:56

    Option 1 through EntityManagerFactory

    If you use Hibernate >= 4.3 and JPA 2.1 you can accces the SessionFactory from a EntityManagerFactory through T EntityManagarFactory#unwrap(Class cls).

    SessionFactory sessionFactory = entityManagerFactory.unwrap(SessionFactory.class);
    

    Option 2 through EntityManager

    If you use Hibernate >= 4.3 and JPA >= 2.0 then you can accces the Session from the EntityManager through T EntityManagar#unwrap(Class cls). From the Session you can obtain the SessionFactory.

    Session session = entityManager.unwrap(Session.class);
    SessionFactory sessionFactory = session.getSessionFactory();
    

提交回复
热议问题