1. 程式人生 > 其它 >Java資料庫連線庫JDBC用到哪種設計模式

Java資料庫連線庫JDBC用到哪種設計模式

橋接模式: 定義:將抽象部分與它的實現部分分離,使它們都可以獨立地變化。 意圖:將抽象與實現解耦。 橋接模式所涉及的角色
1.Abstraction:定義抽象介面,擁有一個Implementor型別的物件引用
2.RefinedAbstraction:擴充套件Abstraction中的介面定義
3.Implementor:是具體實現的介面,Implementor和RefinedAbstraction介面並不一定完全一致,實際上這兩個介面可以完全不一樣Implementor提供具體操作方法,而Abstraction提供更高層次的呼叫
4.ConcreteImplementor:實現Implementor介面,給出具體實現 Jdk中的橋接模式:JDBC
JDBC連線資料庫的時候,在各個資料庫之間進行切換,基本不需要動太多的程式碼,甚至絲毫不動,原因就是JDBC提供了統一介面,每個資料庫提供各自的實現,用一個叫做資料庫驅動的程式來橋接就行了 JDBC提供兩套介面,一個面向資料庫廠商,一個面向JDBC使用者; 橋接模式是結構型模式,關注點在依賴關係的維護。 對於jdbc技術來說,它解耦了業務與資料庫通訊協議這兩個緯度之間的關係, 所以這兩個緯度之間的關係就需要一個橋,即Driver,至於DriverManager把這個關係接到哪裡就是執行時的事情了。
微觀上,從connection的建立來看,它更像一個抽象工廠模式,特定的Driver建立對應的connection。
巨集觀上,從業務程式碼與connection的關係來看,關鍵點在於一個sql怎麼轉化為對應的通訊協議,就屬於橋接。 ----》答案來源於牛客 go big or go home -- facebook