本文以簡單工廠模式為案例。
在上網看的工廠模式的案例講解中,建立具體實現類一般是簡單new乙個出來。但是在實際開發中,一般都是結合spring來管理物件的。下面分享一種結合spring開發的工廠模式
業務場景:乙個傳送訊息的功能模板。有不同的傳送方式,如 站內信,簡訊,郵件等。先定義乙個傳送訊息的介面
//傳送訊息介面
public inte***ce imessagesender
具體的傳送訊息實現類
/**
* 手機簡訊傳送實現類
*/@service
class phonemessagesender implements imessagesender
@override
public string gettype()
}/**
* 站內信傳送實現類
*/@service
class inmessagesender implements imessagesender
@override
public string gettype()
}/**
* 郵件傳送實現類
*/@service
class mailmessagesender implements imessagesender
@override
public string gettype()
}
工廠類
/**
* 傳送訊息實現類的工廠
*/@component
class messagesende***ctory
public imessagesender createsender(string type)
}
客戶端呼叫
class testdowork
}
本文到此為止. 大話設計模式 抽象工廠模式 簡單工廠模式結合
user表 class user public function get key else department表 class department public function get key else user表操作介面 inte ce iuser sqlserver class sqlser...
C 設計模式 策略模式與簡單工廠模式結合
策略模式相較之於簡單工廠模式適用於生產方法經常變化且方法較為繁多的情況,因為生產方法時常變化就會需要頻繁修改工廠類,違背了開閉原則,這時就可以用策略選擇類由客戶端根據需求動態切換策略。且策略模式通過進一步封裝了 細節,沒有像簡單工廠模式那樣在客戶端建立詳細的物件,而把任務交給了策略選擇類去執行,所以...
Spring中的設計模式(一) 工廠模式
場景 以牛奶為例,有蒙牛 伊利 愛慕希等品牌。public inte ce milk 產品實現介面 public class menniu implements milk public class aimuxi implements milk public class yili implements...