當前位置:
首頁 > 知識 > Spring源碼解析——Spring思想、設計模式總結

Spring源碼解析——Spring思想、設計模式總結

Spring思想 Sping思想 應用場景(特點) 一句話歸納 AOP 1、Aspect Oriented Programming(面向切面編程);2、找出多個類中有一定規律的代碼,開發時拆開,運行時再合併;3、面向切面編程,即面向規則編程。 解耦,專人做專事 OOP 1、Object Oriented Programming(面向對象編程);2、歸納總結生活中一切事物。 封裝、繼承、多態 BOP 1、Bean Oriented Programming(面向Bean編程);2、面向Bean(普通的java類)設計程序 一切從Bean開始 IOC 1、Inversion of Control;2、將New對象的動作交給Spring管理,並由Spring保存已創建的對象(IOC容器)。 轉交控制權(即控制權反轉) DI/DL 1、Dependency Injection(依賴注入) / Dependency Lookup(依賴查找);2、依賴注入、依賴查找、Spring不僅保存自己創建的對象,而且保存對象與對象之間的關係;3、注入即賦值,主要三種方式:構造方法、set方法、直接賦值 先理清關係,再賦值 設計模式 設計模式 應用場景(特點) Design Patterns 一句話歸納 代理模式 Proxy 1、兩個參與角色:執行者(代理人)、被代理人;2、對於被代理人來說,這件事情是一定要做的,但是我自己又不想做或者沒有時間做,找代理;3、代理人必須需要獲取到被代理人的個人資料(持有被代理人的引用) 辦事要求人,所以找代理 工廠模式 Factory 1、對於調用者來說,隱藏了複雜的邏輯處理過程,調用者只關心執行結果;2、對於工廠來說要對結果複雜,保證生產出符合規範的產品 只對結果負責,不要三無產品 單例模式 Singleton 1、保證從系統啟動到系統終止,全過程只會產生一個實例;2、當我們在應用中遇到功能性衝突的時候,需要使用單例模式 保證獨一無二 委派模式 Delegate 1、兩個參與角色:委託人和被委託人;2、委託人和被委託人在權利上完全平等(即實現同一個介面);3、委託人持有被委託人的引用;4、不關心過程,只關心結果。 幹活是你的(普通員工),功勞是我的(項目經理) 策略模式 Strategy 1、最終執行結果是固定的;2、執行過程和執行邏輯不一樣 我行我素,達到目的就行 原型模式 Prototype 1、首先有一個原型;2、數據內容相同,但對象實例不同(完全兩個不同的內存地址) 拔一根猴毛,吹出千萬個。 模板模式 Template 1、執行流程固定,但中間有些步驟有細微差別;2、可實現批量生產 流程標準化,原料自給加。 J2EE(企業級)WEB2.0(只需要敲一個URL(統一資源定位符)) WEB容器,安裝在服務端 (URL ,跟我們的Servlet建議一一對應,多對一的關聯) Servlet(全稱,Server Applet 服務小程序) servlet-api.jar 容器(裝東西的就叫容器,用來裝Servlet) doGet、doPost Struts MVC框架就產生了(Struts,你只要配置一個Filter,用來攔截所有的url請求) 實現一個自己的容器,把用戶請求的url映射成某一個類(普通的類)web/usergetList.do 以後增加需求,需要增加一個類或者一個方法就ok,不要反覆地修改web.xml。 Action Form(每個url都要寫兩個類,新的麻煩) ------ SpringMVC的基本原理: SpringMVC 把一個URL映射某一個類的某個方法,傳參變為一個自動ORM(簡化開發) --------------------- 本文來自 Casablanca_jhBi 的CSDN 博客 ,全文地址請點擊:https://blog.csdn.net/weixin_37243717/article/details/79673502?utm_source=copy

Spring源碼解析——Spring思想、設計模式總結

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 程序員小新人學習 的精彩文章:

Python函數的參數 默認參數 可變參數 關鍵字參數 命名關鍵字參數
ajax跨域問題(三種解決方案)

TAG:程序員小新人學習 |