hibernate和tomcat-多个数据库,有多少监听器



这是背景:我需要连接到许多数据库,在阅读了关于如何在Hibernate中连接到多个数据库的文章后,我决定尝试一下,并编写了3个"Hibernate Listener",每个包含一个SessionFactory,每个对应一个Hibernate-*.cfg.xml。然而,这些"Hibernate监听器"中似乎只有一个在初始化后仍然处于活动状态。我怀疑问题来自于在web.xml中声明3个监听器,每个监听器对应一个"Hibernate Service":

<listener>  
  <listener-class>org.mypackage.HibernateListener1</listener-class>  
</listener>
<listener>  
  <listener-class>org.mypackage.HibernateListener2</listener-class>  
</listener>
<listener>  
  <listener-class>org.mypackage.HibernateListener3</listener-class>  
</listener>

这是允许的吗?还是我必须把我的SessionFactory塞给一个听众?

Infos:Tomcat 7、Hibernate 3.5.6(使用注释)可能不需要:mysql连接器java 5.1.23,mysql 5.1.69。此外:无弹簧

问题来自另一个地方。因此,为了回答这个问题:是的,一个人可以有很多听众。如果您决定将所有SessionFactory都放在一个侦听器中,请小心按打开它们的相反顺序关闭它们(如果您打开A、B和C,请关闭C、B和A)。

最新更新