javascript
Spring框架功能整体介绍
Spring Core Container:
模塊作用:Core 和 Beans 模塊是框架的基礎部分,提供 IoC (轉控制)和依賴注入特性。 這里的基礎 概念是 BeanFactory,它提供對 Factory 模式的經典實 現來消除對程序’性單例模式的需要,并真 正地允許你從程序邏輯中分離出依賴關系和配置
Core
主要包含 Spring 框架基本的核心工具類, Spring 的其他組件都要用到這個包 里的類, Core模塊是其他組件的基 本核心。
Beans (BeanFacotry的作用)
它包含訪問配直文件、創建和管理 bean 以及進行 Inversion of Control I Dependency Injection ( IoC/DI )操作相關的所有類
Context(處理BeanFactory,,一下還是ApplicationContext的作用)
模構建于 Core 和 Beans 模塊基礎之上,提供了一種類似JNDI 注冊器的框 架式的對象訪問方法。 Context 模塊繼承了 Beans 的特性,為 Spring 核 心提供了大量 擴展,添加了對國際化(例如資源綁定)、事件傳播、資源加載和對 Context 的透明創 建的支持。 Context 模塊同時也支持 J2EE 的一些特 性, ApplicationContext 接口是 Context 模塊的關鍵本質區別:(使用BeanFacotry的bean是延時加載的,ApplicationContext是非延時加載的)
Expression Language
模塊提供了強大的表達式語言,用于在運行時查詢和操縱對象。 它是 JSP 2.1 規范中定義的 unifedexpression language 的擴展。 該語言支持設直/獲取屬 性的值,屬性的分配,方法的調用,訪問數組上下文( accessiong the context of arrays )、 容器和索引器、邏輯和算術運算符、命名變量以及從Spring的 IoC 容器中根據名稱檢 索對象。 它也支持 list 投影、選擇和一般的 list 聚合
Spring Data Access/Integration
JDBC
模塊提供了一個 JDBC 抽象層,它可以消除冗長的 JDBC 編碼和解析數據庫廠 商特有的錯誤代碼。
這個模塊包含了 Spring 對 JDBC 數據訪問進行封裝的所有類
ORM 模塊為流行的對象-關系映射 API
如 JPA、 JDO、 Hibernate、 iBatis 等,提供了 一個交互層。 利用 ORM 封裝包,可以混合使用所有 Spring 提供的特性進行 O/R 映射, 如前邊提到的簡單聲 明性事務管理。
OXM 模塊提供了一個對 ObjecνXML 映射實現的抽象層
Object/XML 映射實現包括 JAXB、 Castor、 XMLBeans、 JiBX 和 XStrearn
JMS ( Java Messaging Service )
模塊主要包含了 一些制造和消 費消息的特性。
Transaction
支持編程和聲明性的事務管理,這些事務類必須實現特定的接口,并 且對所有的 POJO 都適用
Spring Web
Web 模塊:提供了基礎的面向 Web 的集成特性c 例如,多文件上傳、使用 servlet listeners 初始化IoC 容器以及一個面向 Web 的應用上下文。 它還包含 Spring 遠程支持中 Web 的相關部分。
Spring Aop
Aspects 模塊提供了對 AspectJ 的集成支持。
Instrumentation 模塊提供了 class instrumentation 支持和 classloader 實現,使得可以在特
定的應用服務器上使用
Test
Test 模塊支持使用 JUnit 和 TestNG 對 Spring 組件進行測試
Spring 容器繼承圖
控制反轉和依賴注入
什么是控制反轉?我覺得有必要先了解軟件設計的一個重要思想:依賴倒置原則(Dependency Inversion Principle )
①:什么是依賴倒置原則?
假設我們設計一輛汽車:先設計輪子,然后根據輪子大小設計底盤,接著根據底盤設計車身,最后根據車身設計好整個汽車。這里就出現了一個“依賴”關系:汽車依賴車身,車身依賴底盤,底盤依賴輪子
上圖看上去沒有什么毛病?但是 萬一輪胎尺寸改了,那么地盤需要改,地盤改了,車身也改了,讓后整個汽車構造都改了.
然后汽車公司倒閉了......................
董事長依賴總經理爭取,總經理依賴部門經理掙錢,部門經理依賴員工爭取,那么員工離職了怎么
辦?????????????????????
反過來.............................假如汽車公司決定修改輪胎的 我們就只需要改動輪子的設計,而不需要動底盤,車身,汽車
的設計了。
IOC容器的最最最最核心思想.......................
ioc的思想最核心的地方在于,資源不由使用資源的雙方管理,而由不使用資源的第三方管理,這可以帶來很多好處。第
一,資源集中管理,實現資源的可配置和易管理。第二,降低了使用資源雙方的依賴程度,也就是我們說的耦合度
?
總結
以上是生活随笔為你收集整理的Spring框架功能整体介绍的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网页加密
- 下一篇: gradle idea java ssm