1. 程式人生 > >spring源碼解析1--spring整體架構

spring源碼解析1--spring整體架構

spa color myba ext actions api 工具類 img mvc

一、Spring整體架構圖

關於Spring的基本介紹就不再贅述了,先展示Spring框架的整體架構圖如下示:

技術分享圖片

二、Spring結構介紹

Spring主要分為Core Container、Test、Data Access、Web、AOP、Aspects等幾個大模塊,而Spring最核心的模塊就是Core Container之後的Beans、Core、Context三個模塊

Core:包含Spring基本的核心工具類,Spring的其他組件都需要使用這個包中的工具類,是最基本的核心包

Beans:該模塊是訪問配置文件、創建和管理bean以及Spring的IOC操作的所有類,該模塊的核心是BeanFactory

Context:該模塊是基於core和bean構建,相當於對bean進行封裝及擴展來對外提供使用,ApplicationContext接口是Context模塊的核心

ExpressionLanguage:提供了一個強大的表達式語音用於在運行時查詢和操作對象。

Data Access/Integration模塊主要提供了數據訪問的支持

JDBC:提供了一個JDBC的抽象層,封裝了JDBC數據訪問的所有類

ORM:為流行的對象-關系映射API,如mybatis、hibernate等提供了交互層

OXM:提供了一個隊Object/XML映射實現的抽象層,包括JAXB、Castor、XMLBeans、JiBX和XStream

JMS:主要包含了一些制造和消費消息的特性

Transactions:支持編程和聲明式事務管理

Web為基於web的應用提供了上下文

Web:提供了基礎的面向web的集成特性

servlet:包含了MVC的實現

struts:提供了對struts的支持

protlet:提供了用於porlet環境和servlet模塊的mvc實現

AOP模塊提供了面向切面編程的實現,並且為spring應用程序中的對象提供了事務管理服務

Aspects模塊提供了對AspectJ的集成支持

Instrumentation模塊提供了class instrumentation支持和class loader實現,使得可以在特定的應用服務器上使用

spring源碼解析1--spring整體架構