第一章 Spring的整體架構(gòu)

第一章 Spring的整體架構(gòu)


Spring是2003年流行起來的一個開源框架,Spring 的作用降低應(yīng)用的復(fù)雜性,它使用JavaBean來替代之前的EJB。從簡單性,可測試性和松耦合的角度來說,任何Java應(yīng)用都可以從Spring中受益。

1.1Spring 整體架構(gòu)

Spring 是一個分層架構(gòu),有20多個模塊,這些模塊被分層了幾個部分,即

(1)core container 核心容器

(2)Data Access/Integeration

(3)Web

(4)AOP


圖1-1 Spring 架構(gòu)圖

(1)core container 核心容器

包含 Beans 、Core 、Context、 El

Core:包含Spring 的核心工具類,Spring的其他組件會用到這個包里的工具。

Beans:包含配置文件,創(chuàng)建和管理Bean,以及和IOC和DI操作相關(guān)的所有的類。

Contex:t模塊構(gòu)建在Core和Bean模塊基礎(chǔ)之上,提供了對象訪問方法,Context繼承了Beans的特性,為Spring提供了大量的擴展。

EL :提供了表達式語言用于在運行時查詢和操作對象

(2)Data Access/Integeration

Data Access/Integeration包含JDBC 、ORM 、OXM 、JMS 和 Transaction

JDBC :提供了一個JDBC抽象層,包含Spring 對JDBC數(shù)據(jù)訪問進行封裝的所有類。

ORM:為流行的對象-關(guān)系映射API 如Hibernate 和MyBaties 提供了一個交互層

OXM: 提供了一個對Object/XML 映射實現(xiàn)的抽象層

JMS: 包含一些生成消費信信息的特性? (rabbit mq, active mq)

Transaction:事務(wù)管理(數(shù)據(jù)庫)

(3)Web

Web模塊建立應(yīng)用程序上下文模塊(context)之上,為Web應(yīng)用提供了上下文,Web層包含了Web、 Web-servlet 、WebStruts、Web-Porlet

Web模塊:提供了基礎(chǔ)的面向web的集成特性,例如。多文件上傳,使用servlet listenners初始化IOC容器和面向web的應(yīng)用上下文

這里說的其實就是在web.xml 里的一些配置,如圖1-2


圖1-2 web.xml

Web-servlet:我們常說的spring mvc 就屬于Web-servlet,spring mvc 框架模型范圍內(nèi)的代碼和web forms 清楚的分離。spring mvc 和spring 其他特性結(jié)合起來(比如AOP,Data? )


(4)AOP?

提供了一個符合AOP聯(lián)盟標準的面向切面編程的實現(xiàn)(aop方面的應(yīng)用有日志和事物管理)

(5)Test

支持使用Junit和Test對Spring組件進行測試

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容