我应该将对Hibernate annotationConfiguration()的调用放在何处,以便只调用一次?

我应该将对Hibernate annotationConfiguration()的调用放在何处,以便只调用一次?,hibernate,ejb-3.1,Hibernate,Ejb 3.1,我的web应用程序中有一些JavaBeans EJB3.1,它们利用Hibernate SessionFactory,因此我需要集中创建这个对象,因为我只需要为整个应用程序创建一个SessionFactory。我是说,下面的电话: SessionFactory sessionFactory = AnnotationConfiguration().configure().buidSessionFactory; 我想创建一个HibernateHelper类并将该方法放在那里,在bean中获得新会话

我的web应用程序中有一些JavaBeans EJB3.1,它们利用Hibernate SessionFactory,因此我需要集中创建这个对象,因为我只需要为整个应用程序创建一个SessionFactory。我是说,下面的电话:

SessionFactory sessionFactory = AnnotationConfiguration().configure().buidSessionFactory;
我想创建一个HibernateHelper类并将该方法放在那里,在bean中获得新会话,因为Hibernate会话是轻量级对象,但是我不知道如何强制这样一个类与应用程序一起初始化,并且只初始化一次

一些见解


非常感谢

这与另一个问题非常相似:


我想补充一点,如果您已经在使用EJB3.1,那么您可能已经在使用JavaEE应用服务器,比如JBossAS。在这种情况下,我建议不要直接使用Hibernate,而是使用JPA。这样,一旦部署了应用程序,AS就会像Hibernate会话一样为您初始化实体管理器。您不必担心这个管道规范。

非常感谢。我把一切都改成了JPA,现在我直接打电话给实体经理。