問題描述如何在Spring,Hibernate在運行時設置的數據庫名稱
我有來自6噸不同的機器6名的數據庫,並具有一個雲服務器。它將在用戶登錄時決定在應用程序中使用哪個數據庫。
我可以連接單個數據庫。但我不知道處理數據庫的動態名稱。
更新:
我能夠動態改變的數據庫,但有一個問題是怎麼回事。只有一個數據庫中存在一些常用的存儲過程(位於雲服務器)(我限制了無法將存儲過程添加到所有數據庫),所以我無法爲任何其他數據庫調用存儲過程。我怎麼打電話?
請給我一些想法。
問題描述如何在Spring,Hibernate在運行時設置的數據庫名稱
我有來自6噸不同的機器6名的數據庫,並具有一個雲服務器。它將在用戶登錄時決定在應用程序中使用哪個數據庫。
我可以連接單個數據庫。但我不知道處理數據庫的動態名稱。
更新:
我能夠動態改變的數據庫,但有一個問題是怎麼回事。只有一個數據庫中存在一些常用的存儲過程(位於雲服務器)(我限制了無法將存儲過程添加到所有數據庫),所以我無法爲任何其他數據庫調用存儲過程。我怎麼打電話?
請給我一些想法。
在Spring中有一個叫做AbstractRoutingDataSource
的類,它可以滿足你的需求,通過文檔你會發現一些關於如何實現這個具體類的幫助,你需要改變(或添加)你的某個部分現有代碼以便配置動態Data source
。來自泉源的This blog正在解釋這一行爲。
請參閱更新的問題。 –
這個Java牧場論壇主題解釋瞭如何做到這一點。它演示瞭如何在運行時更改用戶名/密碼,但是我想象它將改變連接字符串或其他任何部分的模式。
http://www.coderanch.com/t/489984/ORM/java/modify-hibernate-cfg-xml-at
請參閱更新的問題。 –
什麼是選擇不同數據庫的決定標準? – UVM
@UnniVMana請參閱最新的問題。 –
您的更新聽起來像是與以前完全不同的問題。如果您已經解決了最初的問題,請接受答案或發佈解決方案。然後,您應該爲您的新問題創建一個新問題,或嘗試搜索現有問題以查看是否有任何有用的答案。 –