說明:以下轉自Spring官方文檔,用的版本為4.3.11版本。
一、引用官方文檔
2.2.1核心集裝箱
所述核心容器由以下部分組成spring-core
, spring-beans
,spring-context
,spring-context-support
,和spring-expression
(彈簧表達式語言)模塊。
的spring-core
和spring-beans
模塊提供框架的基本零件,包括IOC和依賴注入特征。這BeanFactory
是工廠模式的復雜實施。它消除了對編程單例的需要,並允許您將依賴關系的配置和規范與實際程序邏輯分離。
所述上下文(spring-context
)模塊建立由設置在固體基體上的核心和豆類模塊:它是訪問一個框架式的方式是類似於一個JNDI注冊表對象的裝置。上下文模塊從Beans模塊繼承其功能,並增加了對國際化的支持(例如使用資源束),事件傳播,資源加載以及例如Servlet容器透明創建上下文。Context模塊還支持Java EE功能,如EJB,JMX和基本遠程處理。該ApplicationContext
接口是語境模塊的焦點。 spring-context-support
支持將常見的第三方庫集成到用於緩存的Spring應用程序環境(EhCache,Guava,JCache),郵件(JavaMail),調度(CommonJ,Quartz)和模板引擎(FreeMarker,JasperReports,Velocity)中。
該spring-expression
模塊提供了強大的表達式語言,用於在運行時查詢和操作對象圖。它是JSP 2.1規范中規定的統一表達語言(統一EL)的擴展。該語言支持設置和獲取屬性值,屬性分配,方法調用,訪問數組,集合和索引器的內容,邏輯和算術運算符,命名變量以及從Spring的IoC容器中以名稱檢索對象。它還支持列表投影和選擇以及常見列表聚合。
該spring-aop
模塊提供了一個符合AOP聯盟標准的面向方面的編程實現,允許您定義方法攔截器和切入點,以清理分離實現應分離的功能的代碼。使用源代碼級元數據功能,您還可以將行為信息與.NET屬性類似。
單獨的spring-aspects
模塊提供與AspectJ的集成。
該spring-instrument
模塊提供了在某些應用服務器中使用的類檢測支持和類加載器實現。該spring-instrument-tomcat
模塊包含Spring的Tomcat測試代理。
Spring框架4包括spring-messaging
從關鍵抽象模塊Spring集成項目,例如Message
,MessageChannel
,MessageHandler
,和其他人作為基於消息的應用奠定了基礎。該模塊還包括一組用於將消息映射到方法的注釋,類似於基於Spring MVC注釋的編程模型。
所述數據訪問/集成層由JDBC,ORM,OXM,JMS和交易模塊。
該spring-jdbc
模塊提供了一個JDBC抽象層,無需對繁瑣的JDBC編碼和數據庫供應商特定的錯誤代碼進行解析。
該spring-tx
模塊支持 針對實現特殊接口和所有POJO(普通Java對象)的類的編程和聲明式事務管理。
該spring-orm
模塊為流行的對象關系映射 API提供集成層 ,包括JPA, JDO和Hibernate。使用該spring-orm
模塊,您可以將所有這些O/R映射框架與Spring提供的所有其他功能結合使用,例如前面提到的簡單的聲明性事務管理功能。
該spring-oxm
模塊提供了一個支持Object / XML映射實現(如JAXB,Castor,XMLBeans,JiBX和XStream)的抽象層。
該spring-jms
模塊(Java消息服務)包含用於生成和消費消息的功能。從Spring Framework 4.1開始,它提供了與spring-messaging
模塊的集成 。
所述網絡層由的spring-web
,spring-webmvc
,spring-websocket
,和spring-webmvc-portlet
模塊。
該spring-web
模塊提供基本的面向Web的集成功能,例如多部分文件上傳功能,以及使用Servlet偵聽器和面向Web的應用程序上下文初始化IoC容器。它還包含一個HTTP客戶端和Spring的遠程支持的Web相關部分。
該spring-webmvc
模塊(也稱為Web-Servlet模塊)包含用於Web應用程序的Spring的模型視圖控制器(MVC)和REST Web Services實現。Spring的MVC框架提供了領域模型代碼和Web表單之間的清晰分離,並與Spring Framework的所有其他功能集成。
該spring-webmvc-portlet
模塊(也稱為Web-Portlet模塊)提供了要在Portlet環境中使用的MVC實現,並且反映了基於Servlet的spring-webmvc
模塊的功能。
該spring-test
模塊支持使用JUnit或TestNG對Spring組件進行單元測試和集成測試。它提供了Spring 的一致加載ApplicationContext
和這些上下文的緩存。它還提供可用於孤立測試代碼的模擬對象。
二、Spring體系說明
其實Spring Framework包含了Spring Web MVC。而整個Spring體現是非常龐大的,所以在找這類文檔時,最正確的做法是通過官方文檔去閱讀。
比如Spring體系有Spring Boot、Spring Cloud等。入口就是:https://spring.io/docs/reference,然后搜索想要的結果即可。
參考:
http://docs.spring.io/spring/docs/current/spring-framework-reference/htmlsingle/(官方文檔)
https://www.ibm.com/developerworks/cn/java/wa-spring1/index.html