我在persistence.xml中設置了數據庫連接,包括服務器url和用戶名/密碼。但是,如果我想在開發環境(dev/qa/stg/prod)之間切換,是否有更好的方法來更改配置,而不是手動修改persistence.xml?如何使用持久性動態配置數據庫連接
我正在使用jdbc連接來調用存儲過程以及休眠的東西。 jdbc連接更加靈活。它根據環境變量DEV_ENV連接到不同的數據庫。
// DEV DB
if (env.equalsIgnoreCase("dev")) {
connectionURL = "jdbc:oracle:thin:@ldap://mdaoid.mdanderson.org:389/risdev3, cn=OracleContext,dc=mdacc,dc=tmc,dc=edu";
user = "ristore_owner";
pass = "ristoreowner987";
}
// QA DB
else if (env.equalsIgnoreCase("qa")) {
connectionURL = "jdbc:oracle:thin:@ldap://mdaoid.mdanderson.org:389/risdev3, cn=OracleContext,dc=mdacc,dc=tmc,dc=edu";
user = "ristore_owner_qa";
pass = "ristore987q";
}
如何配置hibernate數據庫連接以相同的方式,拿起環境變量,並決定哪個數據庫連接到飛行?
編輯:人們向我展示瞭如何通過從tomcat服務器獲取數據庫信息的戰爭來實現它。然而,我的是一個java應用程序(jar),我沒有部署。我把它設置爲一個cron作業來每週運行這個jar。
爲什麼要手動修改persistence.xml?你可以擁有2個持久性單元「dev」和「prod」,並創建你的EMF,以適當的爲準 –
@NeilStockton沒有考慮過使用單位。會試試看。在哪裏以及如何創建我的EMF? – ddd
你在哪裏以及如何創建你的EMF? –