事情是有2個不同的會話工廠提供程序,每個提供程序都配置有相應的數據庫。
在下面的示例中HibernateUtilDb1
將使用hibernate-db1.cfg.xml
中的配置,而HibernateUtilDb2
將使用hibernate-db2.cfg.xml
。
public class HibernateUtilDb1 {
private static final SessionFactory sessionFactory = buildSessionFactory();
private static SessionFactory buildSessionFactory() {
try {
return new Configuration().configure("hibernate-db1.cfg.xml").buildSessionFactory();
}
catch (Throwable ex) { ...}
}
...
和:
public class HibernateUtilDb2 {
private static final SessionFactory sessionFactory = buildSessionFactory();
private static SessionFactory buildSessionFactory() {
try {
return new Configuration().configure("hibernate-db2.cfg.xml").buildSessionFactory();
}
catch (Throwable ex) { ...}
}
...
你說的是使用兩個數據庫的單個應用程序?或者部署一個應用程序來使用一個數據庫或另一個?如果前者,爲什麼應用程序使用兩個數據庫?你想達到什麼目的? – Hedley
究竟是@赫德利所說的......對於第二個(在飛行中選擇一個數據庫)在休眠多租戶可能會覆蓋您的需求 – dimzak
我有兩年1500萬條記錄,我想我分享這些數據以改善搜索。 –