[英]Passing config data to concrete implementation of a DAO in Java
我正在嘗試使用Abstract Factory實現數據訪問對象模式,以從客戶端代碼中抽象出對多個數據源的訪問。 我引用了以下鏈接。
http://www.oracle.com/technetwork/java/dataaccessobject-138824.html
我的問題是:-如何將配置數據(例如數據文件的路徑)從客戶端代碼傳遞到DAO的具體實現中?
在上面粘貼的鏈接中,在示例9.2下,有一個具體實現的示例,其中,他們使用硬編碼的DBURL和DRIVER。 如果需要從例9.6所示的客戶端代碼中傳遞這兩個信息,該怎么辦?
將一個加參數添加到DAOFactory.getDAOFactory函數(例如,一個ConnectionParams對象,用於存儲連接URL,用戶等),然后將其傳遞給DAOFactory實現的構造函數。 之后,您的DAOFactory可以使用ConnectionParams創建連接。
在這種情況下,createConnection方法不能為靜態。
ConnectionParams對象可以像這樣:
public class ConnectionParams {
private String url;
private String pass;
private String file;
/* getters and setters */
}
`
如果您的DAOFactory實現需要一個file參數,則可以使用file字段。 其他人可以使用url和密碼。
另一種解決方案是從公用屬性文件或System.properties中獲取所需的參數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.