Spring(一):Spring概述及相關概念


  1. Spring簡介

    Spring主要作用是用來解耦,降低代碼之間的耦合度。根據功能的不同,可以將系統的代碼分為主業務邏輯與系統服務邏輯。

    • 主業務邏輯之間代碼聯系緊密,相互調用較多,復用性相對較低;

    • 系統服務邏輯相對來說功能獨立,主要是為主業務邏輯提供系統級的服務,如日志、安全、事務等,復用性相對較高。

    Spring根據代碼的功能特點,將降低耦合度分為了兩種方式:控制反轉IoC與面向切面AOP。

    • IoC控制反轉是的主業務在相互調用的過程中,不需要使用者手動維護之間的關系,即不需要手動創建對象,而是交由Spring容器進行統一管理,自動注入。
    • AOP面向切面編程,將系統服務邏輯進行抽取公用,使系統服務得到了最大復用,而且不需要使用者手工將系統服務混雜到主業務邏輯中,交由Spring容器進行統一執行。
  2. Spring核心結構

    Spring經過多年發展,現已成為事實上的行業標准,並且衍生出了眾多子項目,如Spring Data、Spring Web mvc、Spring Boot等

​ 我們將的Spring指的是Spring Framework框架,目前Web模塊與Data模塊均已發展為子項目Spring MVC與Spring Data。Spring Framework是一個分層清晰並且依賴關系、指責定位非常明確的輕量級框架,主要包括Core container(核型容器)模塊、AOP/Aspects模塊以及Data(數據庫訪問)模塊和Web(web應用)模塊等,並且做到了獨立,可插拔式開發。

  1. Spring特點

    • 非侵入式

      Spring框架的API不會出現在業務邏輯中,即業務邏輯就是POJO。業務邏輯中沒有Spring相關的API,可以快速移植到其他框架

    • 容器

      Spring容器來管理對象的生命周期、對象間的依賴關系。

    • IoC

      控制反轉(Inversion of Control),創建對象的實例不是由調用者完成,而是交由Spring容器完成,並注入調用者。

      ​ 應用IoC后,一個對象依賴的其他對象會被動的傳入,而不是這個對象自己創建或者查找依賴對象。即不是對象從容器中查找依賴,而是容器在對象初始化時主動將依賴傳入。

    • AOP

      AOP面向切面編程,是一種編程思想,是對面向對象OOP的補充。允許通過分離主業務邏輯與系統級服務進行開發,可以把日志、安全、事務管理等服務剝離出來,提取為公用代碼,這樣既降低了代碼耦合,也提高了代碼的復用率。AOP就是將這些系統服務抽取形成一個切面,然后將切面動態的植入到業務邏輯中。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM