我得到一個Swing應用程序,開始詢問用戶連接參數,因爲每個用戶都可以犯錯誤我想知道處理錯誤連接嘗試時的最佳方式,即錯誤的url處理休眠在Swing應用上的不正確連接
我得到的是一個按鈕,發送DBTYPE,用戶,通過和url到地圖,然後我獲得持續整個應用程序像這樣的EntityManagerFactory的:
emf = Persistence.createEntityManagerFactory("persistenceUnit", connectionProperties);
但正在接近1分鐘告訴我
java.sql.SQLRecoverableException: IO Error: The Network Adapter could not establish the connection
- 我可以操縱休眠更快回答超時?
- 我應該改變我使用entityManagerFactory的方式嗎?
編輯:我有一個連接器類,它所做的只是允許GUI發送參數給它,然後允許我的DAO檢索該類的實例以獲取EntityManagerFactory。這些都是我的連接屬性,在GUI改變基於DB它選擇:
connectionProperties.put("hibernate.dialect", "org.hibernate.dialect.Oracle10gDialect"); connectionProperties.put("hibernate.connection.driver_class", "oracle.jdbc.driver.OracleDriver"); connectionProperties.put("hibernate.connection.url", userSettings.get("url", "")); connectionProperties.put("hibernate.connection.username", userSettings.get("username", "")); connectionProperties.put("hibernate.connection.password", userSettings.get("password", ""));
的方言,這是提供一個EntityManager到任何需要的方法之一:
protected EntityManager getEntityManager() { if (em == null) {
em = Connector.getInstance().getEmf().createEntityManager();
return em; } else { return em; } }
我們需要知道你的db連接是如何配置的,以提供任何有用的建議。 –