2013-01-21 64 views
1

我必須在MySQL中使用hibernate。我也使用spring MVC。有一種形式,有十個領域必須存儲在三個不同的表格中。其中兩個在同一個數據庫中,而第三個在另一個數據庫中。我如何儲存它們?通常我使用@modelattribute。我如何構建實體類?和數據庫連接。有一個jdbc.properties文件,其中給出了數據庫的名稱。請幫忙。hibernate如何與mysql中的多個數據庫進行交互?

+0

.. 如何jdbc.properties文件來? –

+0

實際上我使用springMVC的hibernate,它包含jdbc.properties文件。 –

+0

編輯我的答案春季MVC。 – DarkHorse

回答

1

發表於hibernate-forum也有類似問題。

因此,解決方案基本上爲兩個數據庫創建兩個hibernate.cfg.xml文件。然後創建兩個會話工廠。在實體類中不會有劇烈的變化,但是您需要通過編程方式通過兩個會話工廠的會話對象來調用兩個不同的save()。

如果在您的模式中有許多複雜的映射,最好去hibernate shards。這裏是一個similar reference

編輯:

由於您使用的是春天MVC,你需要指定JDBC屬性兩個JDBC配置文件,並在applicationContext.xml中,彈簧的servlet創建兩個datasource beans。 xml無論你在哪裏創建bean。爲兩個DataSource創建對應的session factory bean,並以編程方式使用它們調用兩個數據庫上的save()。

應該如果您正在使用Hibernate應該有一個Hibernate的配置文件工作:)

+0

我們可以通過數據庫進行事務性更新嗎 – Subin

+0

是的,我們可以..需要事務管理器。 – DarkHorse

相關問題