天天看點

架構核心jar包及依賴包一.struts2六大核心jar包二.Spring4.x 核心jar包spring4中各個jar包的介紹Spring各jar包詳解Spring與其他架構整合的jar包Spring——jar包詳解(其他參考)

一.struts2六大核心jar包

1. commons-logging-1.1.x.jar  ----- ASF出品的日志包,struts2使用這個日志包來支援JDK和Log4j的日志記錄。

2. freemarker-2.3.x.jar  ---------- 表現層架構,定義了struts2的可視元件主題,struts2的UI标簽的模版,使用FreeMark編寫

3. ognl-2.6.x.jar  ----------------- 對象圖導航語言(Object Graphic Navigation Language),struts2架構通過其讀寫對象屬性

4. struts2-core-2.x.x.jar  -------- struts2的核心類庫

5. xwork.jar  ----------------------- webwork的核心庫,struts2在其上建構

6. commons-fileupload-1.2.1.jar -- 檔案上傳元件,2.1.6版本後必須加入此檔案

二.Spring4.x 核心jar包

================================================================================================

Spring架構的核心基于“控制反轉(Inversion of Control     IOC)”原理。IOC是一種将元件依賴關系的建立和管理置于程式外部的技術。

依賴注入是從應用程式的角度在描述,可以把依賴注入描述完整點:應用程式依賴容器建立并注入它所需要的外部資源;而控制反轉是從容器的角度在描述,描述完整點:容器控制應用程式,由容器反向的向應用程式注入應用程式所需要的外部資源

核心jar包:

 1. spring.jar 是包含有完整釋出子產品的單個jar 包。

 2. org.springframework.aop 包含在應用中使用Spring的AOP特性時所需的類。

 3. org.springframework.asm  Spring獨立的asm程式, Spring2.5.6的時候需要asmJar 包,

     3.0開始提供他自己獨立的asmJar。

 4. org.springframework.aspects 提供對AspectJ的支援,以便可以友善的将面向方面的功能內建進IDE中,

    比如Eclipse AJDT。

 5. org.springframework.beans所有應用都要用到的,它包含通路配置檔案、建立和管理bean

     以及進行Inversion of Control / Dependency Injection(IoC/DI)操作相關的所有類。

 6. org.springframework.context.support包含支援緩存Cache(ehcache)、JCA、JMX、

    郵件服務(Java Mail、COS Mail)、任務計劃Scheduling(Timer、Quartz)方面的類。

 7. org.springframework.context為Spring核心提供了大量擴充。可以找到使用Spring ApplicationContext

   特性時所需的全部類,JDNI所需的全部類,UI方面的用來與模闆(Templating)引擎如 Velocity、FreeMarker、

   JasperReports內建的類,以及校驗Validation方面的相關類。

 8. org.springframework.core 包含Spring架構基本的核心工具類,Spring其它元件要都要使用到這個包裡的類,

     是其它元件的基本核心。

 9. org.springframework.expression  Spring表達式語言。

 10. org.springframework.instrument.tomcat Spring3.0對Tomcat的連接配接池的內建。

 11. org.springframework.instrument Spring3.0對伺服器的代理接口。

 12. org.springframework.jdbc 包含對Spring對JDBC資料通路進行封裝的所有類。

 13. org.springframework.jms 提供了對JMS 1.0.2/1.1的支援類。

 14. org.springframework.orm 包含Spring對DAO特性集進行了擴充,使其支援 iBATIS、JDO、OJB、TopLink,

      因為Hibernate已經獨立成包了,現在不包含在這個包裡了。這個jar檔案裡大部分的類都要依賴spring-dao.jar

      裡的類,用這個包時你需要同時包含spring-dao.jar包。

 15. org.springframework.oxm  Spring 對Object/XMl的映射支援,可以讓Java與XML之間來回切換。

 16. org.springframework.test  對Junit等測試架構的簡單封裝。

 17. org.springframework.transaction為JDBC、Hibernate、JDO、JPA等提供的一緻的聲明式和程式設計式事務管理。

 18. org.springframework.web.portlet  SpringMVC的增強。

 19. org.springframework.web.servlet  對J2EE6.0 的Servlet3.0的支援。

 20. org.springframework.web.struts Struts架構支援,可以更友善更容易的內建Struts架構。

 21. org.springframework.web 包含Web應用開發時,用到Spring架構時所需的核心類,包括自動載入 

      WebApplicationContext特性的類、Struts與JSF內建類、檔案上傳的支援類、Filter類和大量工具輔助類。

spring4中各個jar包的介紹

Spring AOP:Spring的面向切面程式設計,提供AOP(面向切面程式設計)的實作

Spring Aspects:Spring提供的對AspectJ架構的整合

Spring Beans:Spring IOC的基礎實作,包含通路配置檔案、建立和管理bean等。

Spring Context:在基礎IOC功能上提供擴充服務,此外還提供許多企業級服務的支援,有郵件服務、任務排程、JNDI定位,EJB內建、遠端通路、緩存以及多種視圖層架構的支援。

Spring Context Support:Spring context的擴充支援,用于MVC方面。

Spring Core:Spring的核心工具包

Spring expression:Spring表達式語言

Spring Framework Bom:

Spring Instrument:Spring對伺服器的代理接口

Spring Instrument Tomcat:Spring對tomcat連接配接池的內建

Spring JDBC:對JDBC 的簡單封裝

Spring JMS:為簡化jms api的使用而做的簡單封裝

Spring Messaging:

Spring orm:整合第三方的orm實作,如hibernate,ibatis,jdo以及spring 的jpa實作

Spring oxm:Spring對于object/xml映射的支援,可以讓JAVA與XML之間來回切換

Spring test:對JUNIT等測試架構的簡單封裝

Spring tx:為JDBC、Hibernate、JDO、JPA等提供的一緻的聲明式和程式設計式事務管理。

Spring web:包含Web應用開發時,用到Spring架構時所需的核心類,包括自動載入WebApplicationContext特性的類、Struts與JSF內建類、檔案上傳的支援類、Filter類和大量工具輔助類。

Spring webmvc:包含SpringMVC架構相關的所有類。包含國際化、标簽、Theme、視圖展現的FreeMarker、JasperReports、Tiles、Velocity、XSLT相關類。當然,如果你的應用使用了獨立的MVC架構,則無需這個JAR檔案裡的任何類。

Spring webmvc portlet:Spring MVC的增強

很多人都在用spring開發java項目,但是配置maven依賴的時候并不能明确要配置哪些spring的jar,經常是胡亂添加一堆,編譯或運作報錯就繼續配置jar依賴,導緻spring依賴混亂,甚至下一次建立相同類型的工程時也不知道要配置哪些spring的依賴,隻有拷貝,其實,當初我就是這麼幹的!

  spring的jar包隻有20個左右,每個都有相應的功能,一個jar還可能依賴了若幹其他jar,是以,搞清楚它們之間的關系,配置maven依賴就可以簡潔明了,下面舉個例子,要在普通java工程使用spring架構,需要哪些jar呢?隻要一個

1

2

3

4

5

<

dependency

>

<

groupId

>org.springframework</

groupId

>

<

artifactId

>spring-context</

artifactId

>

<

version

>3.2.17.RELEASE</

version

>

</

dependency

>

  那要在web工程中引入spring mvc呢?也隻要配置一個依賴

1

2

3

4

5

<

dependency

>

<

groupId

>org.springframework</

groupId

>

<

artifactId

>spring-webmvc</

artifactId

>

<

version

>3.2.17.RELEASE</

version

>

</

dependency

>

  為什麼可以這樣配置?接下來我們以spring 3.2.17.RELEASE版本為例,介紹spring架構結構,spring 4稍有不同,将在最後介紹

  spring官網給出了一張spring3的結構圖

架構核心jar包及依賴包一.struts2六大核心jar包二.Spring4.x 核心jar包spring4中各個jar包的介紹Spring各jar包詳解Spring與其他架構整合的jar包Spring——jar包詳解(其他參考)

  圖中将spring分為5個部分:core、aop、data access、web、test,圖中每個圓角矩形都對應一個jar,如果在maven中配置,所有這些jar的“groupId”都是“org.springframework”,每個jar有一個不同的“artifactId”,另外,“instrumentation”有兩個jar,還有一個“spring-context-support”圖中沒有列出,是以spring3的jar包一共是19個

  下面介紹這5個部分的jar以及依賴關系

core

  core部分包含4個子產品

  1. spring-core:依賴注入IoC與DI的最基本實作
  2. spring-beans:Bean工廠與bean的裝配
  3. spring-context:spring的context上下文即IoC容器
  4. spring-expression:spring表達式語言

  它們的完整依賴關系

架構核心jar包及依賴包一.struts2六大核心jar包二.Spring4.x 核心jar包spring4中各個jar包的介紹Spring各jar包詳解Spring與其他架構整合的jar包Spring——jar包詳解(其他參考)

  因為spring-core依賴了commons-logging,而其他子產品都依賴了spring-core,是以整個spring架構都依賴了commons-logging,如果有自己的日志實作如log4j,可以排除對commons-logging的依賴,沒有日志實作而排除了commons-logging依賴,編譯報錯

1

2

3

4

5

6

7

8

9

10

11

<

dependency

>

<

groupId

>org.springframework</

groupId

>

<

artifactId

>spring-context</

artifactId

>

<

version

>3.2.17.RELEASE</

version

>

<

exclusions

>

<

exclusion

>

<

groupId

>commons-logging</

groupId

>

<

artifactId

>commons-logging</

artifactId

>

</

exclusion

>

</

exclusions

>

</

dependency

>

aop

  aop部分包含4個子產品

  1. spring-aop:面向切面程式設計
  2. spring-aspects:內建AspectJ
  3. spring-instrument:提供一些類級的工具支援和ClassLoader級的實作,用于伺服器
  4. spring-instrument-tomcat:針對tomcat的instrument實作

  它們的依賴關系

架構核心jar包及依賴包一.struts2六大核心jar包二.Spring4.x 核心jar包spring4中各個jar包的介紹Spring各jar包詳解Spring與其他架構整合的jar包Spring——jar包詳解(其他參考)

data access

  data access部分包含5個子產品

  1. spring-jdbc:jdbc的支援
  2. spring-tx:事務控制
  3. spring-orm:對象關系映射,內建orm架構
  4. spring-oxm:對象xml映射
  5. spring-jms:java消息服務

  它們的依賴關系

架構核心jar包及依賴包一.struts2六大核心jar包二.Spring4.x 核心jar包spring4中各個jar包的介紹Spring各jar包詳解Spring與其他架構整合的jar包Spring——jar包詳解(其他參考)

web

  web部分包含4個子產品

  1. spring-web:基礎web功能,如檔案上傳
  2. spring-webmvc:mvc實作
  3. spring-webmvc-portlet:基于portlet的mvc實作
  4. spring-struts:與struts的內建,不推薦,spring4不再提供

  它們的依賴關系

架構核心jar包及依賴包一.struts2六大核心jar包二.Spring4.x 核心jar包spring4中各個jar包的介紹Spring各jar包詳解Spring與其他架構整合的jar包Spring——jar包詳解(其他參考)

test

  test部分隻有一個子產品,我将spring-context-support也放在這吧

  1. spring-test:spring測試,提供junit與mock測試功能
  2. spring-context-support:spring額外支援包,比如郵件服務、視圖解析等

  它們的依賴關系

架構核心jar包及依賴包一.struts2六大核心jar包二.Spring4.x 核心jar包spring4中各個jar包的介紹Spring各jar包詳解Spring與其他架構整合的jar包Spring——jar包詳解(其他參考)

  到這裡,spring3的介紹就完了,看着這些圖我相信你在maven中配置spring依賴時不會再混亂了

  下面介紹spring4,與spring3結構基本相同,下面是官網給出的結構圖

架構核心jar包及依賴包一.struts2六大核心jar包二.Spring4.x 核心jar包spring4中各個jar包的介紹Spring各jar包詳解Spring與其他架構整合的jar包Spring——jar包詳解(其他參考)

  可以看到,圖中去掉了spring3的struts,添加了messaging和websocket,其他子產品保持不變,是以,spring4的jar有20個

  1. spring-websocket:為web應用提供的高效通信工具
  2. spring-messaging:用于建構基于消息的應用程式

  它們的依賴關系

架構核心jar包及依賴包一.struts2六大核心jar包二.Spring4.x 核心jar包spring4中各個jar包的介紹Spring各jar包詳解Spring與其他架構整合的jar包Spring——jar包詳解(其他參考)

Spring各jar包詳解

spring.jar 是包含有完整釋出子產品的單個jar 包。但是不包括mock.jar,aspects.jar, spring-portlet.jar, and spring-hibernate2.jar。

spring-src.zip就是所有的源代碼壓縮包。

除了spring.jar 檔案,Spring 還包括有其它21 個獨立的jar 包,各自包含着對應的Spring元件,使用者可以根據自己的需要來選擇組合自己的jar 包,而不必引入整個spring.jar的所有類檔案。

1.spring-aop

這個jar 檔案包含在應用中使用Spring 的AOP 特性時所需的類和源碼級中繼資料支援。

使用基于AOP 的Spring特性,如聲明型事務管理(Declarative Transaction Management),也要在應用裡包含這個jar包。

外部依賴spring-core, (spring-beans,AOP Alliance, CGLIB,Commons Attributes)。

關于org.springframework.asm  

Spring獨立的asm程式, Spring2.5.6的時候需要asmJar包,3.0開始提供他自己獨立的asmJar。

2.spring-aspects.jar

提供對AspectJ的支援,以便可以友善的将面向方面的功能內建進IDE中,比如Eclipse AJDT。

外部依賴。

3.spring-beans.jar

這個jar 檔案是所有應用都要用到的,它包含通路配置檔案、建立和管理bean 以及進行Inversion ofControl / Dependency Injection(IoC/DI)操作相關的所有類。如果應用隻需基本的IoC/DI 支援,引入spring-core.jar 及spring-beans.jar 檔案就可以了。

外部依賴spring-core,(CGLIB)。

4.spring-context.jar

這個jar 檔案為Spring 核心提供了大量擴充。可以找到使用Spring ApplicationContext特性時所需的全部類,JDNI 所需的全部類,instrumentation元件以及校驗Validation 方面的相關類。

外部依賴spring-beans, (spring-aop)。

 5.spring-context-support

包含支援緩存Cache(ehcache)、JCA、JMX、 郵件服務(Java Mail、COS Mail)、任務計劃Scheduling(Timer、Quartz)方面的類。

以前的版本中應該是這個:spring-support.jar這個jar 檔案包含支援UI模版(Velocity,FreeMarker,JasperReports),郵件服務,腳本服務(JRuby),緩存Cache(EHCache),任務計劃Scheduling(uartz)方面的類。

外部依賴spring-context, (spring-jdbc, Velocity,FreeMarker, JasperReports, BSH, Groovy,JRuby, Quartz, EHCache)

6.spring-core.jar

這個jar 檔案包含Spring 架構基本的核心工具類。Spring 其它元件要都要使用到這個包裡的類,是其它元件的基本核心,當然你也可以在自己的應用系統中使用這些工具類。

外部依賴Commons Logging, (Log4J)。

7.spring-expression  

Spring表達式語言。

8.spring-instrument 

Spring3.0對伺服器的代理接口。

9. spring-instrument-tomcat 

Spring3.0對Tomcat的連接配接池的內建。

10.spring-jdbc.jar

這個jar 檔案包含對Spring 對JDBC 資料通路進行封裝的所有類。

外部依賴spring-beans,spring-dao。

11.spring-jms.jar

這個jar包提供了對JMS 1.0.2/1.1的支援類。

外部依賴spring-beans,spring-dao,JMS API。

此外,還有下面這些以spring-j*開頭的包,本人還沒用過。

spring-jmx.jar

這個jar包提供了對JMX 1.0/1.2的支援類。外部依賴spring-beans,spring-aop, JMX API。

spring-jca.jar

對JCA 1.0的支援。外部依賴spring-beans,spring-dao, JCA API。

spring-jdo.jar

對JDO 1.0/2.0的支援。外部依賴spring-jdbc, JDO API, (spring-web)。

spring-jpa.jar

對JPA 1.0的支援。外部依賴spring-jdbc, JPA API, (spring-web)。

12.spring-messaging

 spring-messaging子產品為內建messaging api和消息協定提供支援

參考 http://www.cnblogs.com/davidwang456/p/4446796.html

13. spring-orm 

包含Spring對DAO特性集進行了擴充,使其支援iBATIS、JDO、OJB、TopLink,  因為Hibernate已經獨立成包了,現在不包含在這個包裡了。這個jar檔案裡大部分的類都要依賴spring-dao.jar裡的類,用這個包時你需要同時包含spring-dao.jar包。

14. spring-oxm  

Spring 對Object/XMl的映射支援,可以讓Java與XML之間來回切換。

15.spring-test

對Junit等測試架構的簡單封裝。

16.spring-tx

以前是在這裡org.springframework.transaction

為JDBC、Hibernate、JDO、JPA、Beans等提供的一緻的聲明式和程式設計式事務管理支援。

17.spring-web.jar

這個jar 檔案包含Web 應用開發時,用到Spring 架構時所需的核心類,包括自動載入Web ApplicationContext 特性的類、Struts 與JSF 內建類、檔案上傳的支援類、Filter 類和大量工具輔助類。

外部依賴spring-context, Servlet API, (JSP API, JSTL,Commons FileUpload, COS)。

org.springframework.web.portlet  

SpringMVC的增強。

org.springframework.web.servlet  

對J2EE6.0的Servlet3.0的支援。

org.springframework.web.struts 

Struts架構支援,可以更友善更容易的內建Struts架構。

18.spring-webmvc.jar

這個jar 檔案包含Spring MVC 架構相關的所有類。包括架構的Servlets,Web MVC架構,控制器和視圖支援。當然,如果你的應用使用了獨立的MVC 架構,則無需這個JAR 檔案裡的任何類。

外部依賴spring-web, (spring-support,Tiles,iText,POI)。

19.spring-webmvc-protlet

20.spring-websocket

21.spring-dao

這個jar檔案包含Spring DAO、Spring Transaction進行資料通路的所有類。為了使用聲明型事務支援,還需在自己的應用裡包含spring-aop.jar。

關于spring-dao.jar(3.x版本裡,沒有發現這個包)

外部依賴spring-core,(spring-aop, spring-context, JTA API)。

22.spring-remoting

這個jar檔案包含支援EJB、遠端調用Remoting(RMI、Hessian、Burlap、Http Invoker、JAX-RPC)方面的類。

外部依賴spring-aop, (spring-context,spring-web,Hessian,Burlap,JAX-RPC,EJB API)。

23.spring-portlet.jar

spring自己實作的一個類似Spring MVC的架構。包括一個MVC架構和控制器。

外部依賴spring-web, Portlet API,(spring-webmvc)。

Spring與其他架構整合的jar包

spring-hibernate2.jar

對Hibernate 2.1的支援,已經不建議使用。外部依賴spring-jdbc,Hibernate2,(spring-web)。

spring-hibernate3.jar

對Hibernate 3.0/3.1/3.2的支援。外部依賴spring-jdbc,Hibernate3,(spring-web)。

目前的Spring對Hibernate的支援比較好,直接用spring-orm包即可,一般不用單獨添加spring-hibernate包。

spring-toplink.jar

對TopLink架構的支援。外部依賴spring-jdbc,TopLink。

spring-ibatis.jar

對iBATIS SQL Maps的支援。外部依賴spring-jdbc,iBATIS SQL Maps。

spring-jmx.jar

這個jar包提供了對JMX 1.0/1.2的支援類。

外部依賴spring-beans,spring-aop, JMXAPI。

spring-jms.jar

這個jar包提供了對JMS 1.0.2/1.1的支援類。

外部依賴spring-beans,spring-dao,JMS API。

spring-jca.jar

對JCA 1.0的支援。

外部依賴spring-beans,spring-dao, JCAAPI。

spring-jdo.jar

對JDO 1.0/2.0的支援。

外部依賴spring-jdbc, JDO API, (spring-web)。

spring-jpa.jar

對JPA 1.0的支援。

外部依賴spring-jdbc, JPA API,(spring-web)

另外的三個包。

spring-mock.jar

這個jar 檔案包含Spring 一整套mock 類來輔助應用的測試。Spring 測試套件使用了其中大量mock 類,這樣測試就更加簡單。模拟HttpServletRequest 和HttpServletResponse 類在Web 應用單元測試是很友善的。并且提供了對JUnit的支援。

外部依賴spring-core。

WEAVER JARS (dist/weavers)說明。

spring-agent.jar

Spring的InstrumentationSavingAgent (為InstrumentationLoadTimeWeaver),一個裝置代理包,可以參考JDK1.5的Instrumentation功能獲得更多資訊。

外部依賴none (for use at JVM startup:"-javaagent:spring-agent.jar")。

spring-tomcat-weaver.jar

擴充Tomcat的ClassLoader,使其可以使用instrumentation(裝置)類。

外部依賴none (for deployment into Tomcat's"server/lib" directory)。

如果需要使用JSP語言作為Spring's web MVC tags的參數,則需要JSP 2.0的支援。或者選擇Jakarta的JSTL (standard.jar)。

如何選擇這些釋出包,決定選用哪些釋出包其實相當簡單。

如果你正在建構Web 應用并将全程使用Spring,那麼最好就使用單個全部的spring.jar 檔案;

如果你的應用僅僅用到簡單的Inversion ofControl / Dependency Injection(IoC/DI)容器,那麼隻需spring-core.jar與spring-beans.jar 即可;

如果你對釋出的大小要求很高,那麼就得精挑細選了,隻取包含自己所需特性的jar 檔案了。

采用獨立的釋出包你可以避免包含自己的應用不需要的全部類。當然你可以采用其它的一些工具來設法令整個應用包變小,節省空間的重點在于準确地找出自己所需的Spring 依賴類,然後合并所需的類與包就可以了。

Eclispe 有個插件叫ClassPathHelper 可以幫你找找所依賴的類。

Spring AOP:Spring的面向切面程式設計,提供AOP(面向切面程式設計)的實作

Spring Aspects:Spring提供的對AspectJ架構的整合

Spring Beans:Spring IOC的基礎實作,包含通路配置檔案、建立和管理bean等。

Spring Context:在基礎IOC功能上提供擴充服務,此外還提供許多企業級服務的支援,有郵件服務、任務排程、JNDI定位,EJB內建、遠端通路、緩存以及多種視圖層架構的支援。

Spring ContextSupport:Springcontext的擴充支援,用于MVC方面。

Spring Core:Spring的核心工具包

Spring expression:Spring表達式語言

Spring FrameworkBom:

Spring Instrument:Spring對伺服器的代理接口

Spring InstrumentTomcat:Spring對tomcat連接配接池的內建

Spring JDBC:對JDBC 的簡單封裝

Spring JMS:為簡化jms api的使用而做的簡單封裝

Spring Messaging:

Spring orm:整合第三方的orm實作,如hibernate,ibatis,jdo以及spring 的jpa實作

Spring oxm:Spring對于object/xml映射的支援,可以讓JAVA與XML之間來回切換

Spring test:對JUNIT等測試架構的簡單封裝

Spring tx:為JDBC、Hibernate、JDO、JPA等提供的一緻的聲明式和程式設計式事務管理。

Spring web:包含Web應用開發時,用到Spring架構時所需的核心類,包括自動載入WebApplicationContext特性的類、Struts與JSF內建類、檔案上傳的支援類、Filter類和大量工具輔助類。

Spring webmvc:包含SpringMVC架構相關的所有類。包含國際化、标簽、Theme、視圖展現的FreeMarker、JasperReports、Tiles、Velocity、XSLT相關類。當然,如果你的應用使用了獨立的MVC架構,則無需這個JAR檔案裡的任何類。

Spring webmvcportlet:SpringMVC的增強

Spring websocket:

轉自 http://www.cnblogs.com/yanjunwu/archive/2013/04/06/3001927.html

Spring——jar包詳解(其他參考)

org.springframework.aop——Spring的面向切面程式設計,提供AOP(面向切面程式設計)的實作

org.springframework.asm——spring2.5.6的時候需要asm jar包,spring3.0開始提供它自己獨立的asm jar包

org.springframework.aspects——Spring提供的對AspectJ架構的整合

org.springframework.beans——所有應用都用到,包含通路配置檔案,建立和管理bean等,是Spring IOC的基礎實作。

org.springframework.context.support——Springcontext的擴充支援,用于MVC方面

org.springframework.context——提供在基礎IOC功能上的擴充服務,此外還提供許多企業級服務的支援,有郵件服務、任務排程、JNDI定位,EJB內建、遠端通路、緩存以及多種視圖層架構的支援。

org.springframework.core——Spring的核心工具包,其他包依賴此包

org.springframework.expression——Spring表達式語言

org.springframework.instrument.tomcat——Spring對tomcat連接配接池的內建

org.springframework.instrument——Spring對伺服器的代理接口

org.springframework.jdbc——對JDBC 的簡單封裝

org.springframework.jms——為簡化jms api的使用而做的簡單封裝

org.springframework.orm——整合第三方的orm實作,如hibernate,ibatis,jdo以及spring 的jpa實作

org.springframework.oxm——Spring對于object/xml映射的支援,可以讓JAVA與XML之間來回切換

org.springframework.test——對JUNIT等測試架構的簡單封裝

org.springframework.transaction——為JDBC,HIBERNATE,JDO和JPA提供的一緻性的聲明式和簡單程式設計式事務管理

org.springframework.web.portlet——SpringMVC的增強

org.springframework.web.servlet——對J2EE6.0servlet3.0的支援

org.springframework.web.struts——整合struts架構的支援,可以更友善更容易的內建Struts架構。

org.springframework.web——包含Web應用開發時,用到Spring架構時所需的核心類,包括自動載入WebApplicationContext特性的類、Struts與JSF內建類、檔案上傳的支援類、Filter類和大量工具輔助類。

Spring包依賴說明:

1)   spring-core.jar需commons-collections.jar,spring-core.jar是以下其它各個的基本。

2) spring-beans.jar需spring-core.jar,cglib-nodep-2.1_3.jar

3) spring-aop.jar需spring-core.jar,spring-beans.jar,cglib-nodep-2.1_3.jar,aopalliance.jar

4) spring-context.jar需spring-core.jar,spring-beans.jar,spring-aop.jar,commons-collections.jar,aopalliance.jar

5) spring-dao.jar需spring-core.jar,spring-beans.jar,spring-aop.jar,spring-context.jar

6) spring-jdbc.jar需spring-core.jar,spring-beans.jar,spring-dao.jar

7) spring-web.jar需spring-core.jar,spring-beans.jar,spring-context.jar

8) spring-webmvc.jar需spring-core.jar/spring-beans.jar/spring-context.jar/spring-web.jar

9) spring -hibernate.jar需spring-core.jar,spring-beans.jar,spring-aop.jar,spring-dao.jar,spring-jdbc.jar,spring-orm.jar,spring-web.jar,spring-webmvc.jar

10) spring-orm.jar需spring-core.jar,spring-beans.jar,spring-aop.jar,spring-dao.jar,spring-jdbc.jar,spring-web.jar,spring-webmvc.jar

11) spring -remoting.jar需spring-core.jar,spring-beans.jar,spring-aop.jar,spring-dao.jar,spring-context.jar,spring-web.jar,spring-webmvc.jar

12) spring-support.jar需spring-core.jar,spring-beans.jar,spring-aop.jar,spring-dao.jar,spring-context.jar,spring-jdbc.jar

13) spring-mock.jar需spring-core.jar,spring-beans.jar,spring-dao.jar,spring-context.jar,spring-jdbc.jar 

本文其他參考 http://my.oschina.net/huhaoren/blog/300856?p=1

http://blog.csdn.net/dutsoft/article/details/41447565?utm_source=tuicool&utm_medium=referral

================================================================================================