spring的一些概念及優點


Spring是一個輕量級的DI和AOP容器框架。說它輕量級有一大部分原因是相對於EJB的(雖然本人從來沒有接觸過EJB的應用),但重要的是Spring是非侵入式的,基於Spring開發應用一般不依賴於Spring的類。

Spring中的一些概念

DI(Dependency Injection,依賴注入)

依賴注入是控制反轉的具體實現。當一個角色需要另外一個角色協助的時候,在傳統的程序設計中,通常由調用者來創建被調用者的實例,但是在Spring中創建被調用者將不再由調用者完成,而是交給容器去統一創建,這就是控制反轉。創建被調用對象由Spring來完成,在容器實例化對象的時候主動地將被調用者(或者說它的依賴對象)注入給調用對象,這就是依賴注入。

AOP(Aspect Oriented Programming,面向切面編程)

Spring對面向切面編程提供了強有力的支持,通過它讓我們將業務邏輯從應用服務(如事務管理)中分離出來,實現了高內聚開發,應用對象只關注業務邏輯,不再負責其他系統問題,比如日志、事務或權限等。另外Spring還支持用戶自定義切面。

面向切面編程是面向對象編程的一個有力補充。面向對象編程將程序分成各個層次的對象,面向切面的程序將運行過程分解成各個切面。AOP是從運行程序的角度去考慮程序的結構,提取業務處理過程的切面,OOP是靜態的抽象,AOP則是動態的抽象,是對應用執行過程的步驟進行抽象,從而獲得步驟之間的邏輯划分。

容器

Spring是個容器,因為它包含並且管理應用對象的生命周期和配置。比如對象的創建、銷毀和回調等。

框架

Spring作為一個框架,提供了一些基礎功能,比如事務管理或持久層集成等,使開發人員更專注於開發應用邏輯。

Spring的優點

1.使用Spring的IOC容器,將對象之間的依賴關系交給了Spring,降低了組件之間的耦合性,讓我們更專注於應用邏輯。

2.Spring提供眾多服務,比如事務管理,WS等。

3.Spring對AOP很好的支持,方便面向切面編程。

4.Spring對追u的框架提供了很好的集成支持,比如Hibernate、Struts2和JPA等。

5.Spring的DI機制降低了業務對象替換的復雜性。

6.Spring屬於低侵入,代碼的污染極低。

7.Spring的高度可開放性,並不強制依賴於Spring,開發者可以自由選擇Spring的部分或全部。

 

"不要在悲觀的情緒里沉溺太久,也不要在崩潰的邊緣停留太久。"


免責聲明!

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



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