一.**模式
分為jdk**和cglib**。(前者實現介面,後者生成繼承)
1.兩個參與角色:執行者和被**人
2.對於被**人來說,這件事情是一定要完成的,但是自己又不想做或者沒有時間做,找**。
3.需要獲取到被**人的資料。
歸納:辦事要求人,所以找**。
二.工廠模式
分為簡單工廠、工廠方法、抽象工廠。
1.對呼叫者隱藏複雜的邏輯處理過程,呼叫者只關心執行結果。
2.工廠要對結果負責,保證生產出符合規範的產品。
歸納:只對結果負責,不要三無產品。
三.單例模式
1.保證從系統啟動到系統終止,全過程只會產生乙個例項。
2.當我們在應用中遇到功能性衝突的時候,需要使用單例模式。
歸納:保證獨一無二
四.委派模式
1.兩個參與角色,委託人和被委託人。
2.委託人和被委託人在權利上完全平等(即實現同乙個介面)。
3.委託人持有被委託人的引用。
4.不關心過程,只關心結果。
歸納:幹活是你(普通員工)的,功勞是我(專案經理)的。
五.策略模式
1.執行最終結果一樣。
2.執行過程和執行邏輯不一樣。
歸納:不同的實現,達到同樣的目的就行。
六.原型模式
1.首先有乙個原型。
2.資料內容相同,但物件例項不同(完成兩個不同的記憶體位址)。
歸納:拔一根猴毛,生出千萬個。
七.模板模式
1.執行流程固定,但中間有些步驟有差別。
2.可實現批量生產。
歸納:流程標準化,原料自己加。
例:jdbc模板。
spring原始碼分析 spring原始碼分析
1.spring 執行原理 spring 啟動時讀取應用程式提供的 bean 配置資訊,並在 spring 容器中生成乙份相應的 bean 配置登錄檔,然後根據這張登錄檔例項化 bean,裝配好 bean 之間的依賴關係,為上 層應用提供準備就緒的執行環境。二 spring 原始碼分析 1.1spr...
Spring原始碼之PostProcessor介面
spring框架提供了各種postprocessor的介面,作為容器或者bean的後置處理器,其實這些postprocessor本省也是需要註冊到容器總的bean,裡面定義的方法會在特定的時期唄容器所呼叫。通過這種機制框架自身或者開發者再不改變容器或者bean核心邏輯的的情況下對進行擴充套件或者定義...
Spring原始碼之BeanDefinition解析
public void refresh throws bean ception,illegalstateexception catch bean ception var9 this destroybeans this cancelrefresh var9 throw var9 finally 從 裡...