在 mybatis中比如 sqlsession factory使用的是工廠模式,該工廠沒有那麼複雜的邏輯,是乙個簡單工廠模式。
簡單工廠模式( ****** factory pattern):又稱為靜態工廠方法( (static factory method模式,它屬於建立型模式。
在簡單工廠模式中,可以根據引數的不同返回不同類的例項。簡單工廠模式專門定義乙個類來負責建立其他類的例項,被建立的例項通常都具有共同的父類
例子:生產電腦
假設有乙個電腦的代工生產商,它目前已經可以代工生產聯想電腦了,隨著業務的拓展,這個代工生產商還要生產惠普的電腦,我們就需要用乙個單獨的類來專門生產電腦,這就用到了簡單工廠模式。下面我們來實現簡單工廠模式:
1.建立抽象產品類
我們建立乙個電腦的抽象產品類,他有乙個抽象方法用於啟動電腦
public
abstract
class
computer
2.建立具體產品類
接著我們建立各個品牌的電腦,他們都繼承了他們的父類 computer,並實現了父類的star方法
public
class
lenovocomputer
extends
computer
public
class
hpcomputer
extends
computer
}
3.建立工廠類
接下來建立乙個工廠類,它提供了乙個靜態方法 create computer用來生產電腦。你只需要傳入你想生產的電腦的品牌,它就會例項化相應品牌的電腦物件
public
class
compute***ctory
return mcomputer;
}}
客戶端呼叫工廠類
客戶端呼叫工廠類,傳入hp生產出惠普電腦並呼叫該電腦物件的star方法
public
class
creatcomputer
}
單例模式model
直接例項化餓漢式 簡潔直觀 餓漢式 直接建立例項物件,不管你是否需要這個物件 1 構造器私有化 2 自行建立,並且用靜態變數儲存 3 向外提供這個例項 4 強調這是乙個單例,並用final修飾 public class singleton1 列舉式 最簡潔 列舉型別 表示該型別的物件是有限的幾個 我...
簡單工廠模式,工廠模式,抽象工廠模式
三種模式看了一天,記錄下自己的理解 headfirst,比薩店為例 1,簡單工廠模式 乙個具體的工廠類 pizzafactory 乙個抽象的產品類pizza,可以派生出多個具體的產品類 客戶 pizzastore類 工廠類 pizzafactory類關聯產品類pizza,工廠生產出不同型別的pizz...
簡單工廠模式 工廠模式 抽象工廠模式
簡單工廠模式 簡單工廠模式的最大優點在於工廠類中包含了必要的邏輯判斷,根據客戶端的選擇條件動態例項化相關類,對於客戶端來說,去除了與具體產品的依賴。但增加功能時,需增加 case 邏輯判斷分支條件,修改了原有的類,我們不但對擴充套件開發了,對修改也開放了,違背了開放 封閉原則。工廠方法模式,定義了乙...