2013-11-26 40 views
2

這裏是背景:我需要連接多個數據庫,並且在閱讀How to connect to multiple databases in Hibernate的帖子後,我決定試一試,並寫了3個「HibernateListener」,每個包含一個SessionFactory,每個對應於一個hibernate - *。cfg.xml。 但是,似乎只有其中一個「HibernateListeners」在其初始化後保持活動狀態。 我懷疑問題來源於宣佈在web.xml中3個聽衆,每一個「的HibernateService」:hibernate和tomcat - 多個數據庫,有多少個監聽器?

<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> 

這甚至允許或我補習我SessionFactories爲一個監聽器?

相關信息: 的Tomcat 7,休眠3.5.6(使用註釋) 大概不需要的: MySQL的連接器的java 5.1.23,MySQL的69年5月1日。 另外: 沒有彈簧

回答

0

好吧,問題來自另一個地方。所以要回答這個問題: 是的,可以有很多聽衆。 如果您決定將所有SessionFactory放在一個Listener中,請小心按照與它們打開相反的順序關閉它們(如果您打開A,B & C,關閉C,B & A)。