1. 程式人生 > >Struts+Spring+Hibernate jar包介紹

Struts+Spring+Hibernate jar包介紹

引用:http://blog.csdn.net/liyangbing315/article/details/4721170

你瞭解SSH架構中每個Jar包的作用嗎?讓我來分別對這三個框架的jar包介紹一下,先看Hibernate吧!

★   hibernate3.jar,這個是hibernate3.0的核心jar包,必須的,呵呵,沒的選,像我們常用的Session,Query,Transaction都位於這個jar檔案中,必要

★   cglib-2.1.3.jar,CGLIB庫,Hibernate用它來實現PO位元組碼的動態生成,非常核心的庫,必要

★   asm.jar    ASM位元組碼庫    如果使用“cglib”則必要,必要

★   asm-attrs.jar    ASM位元組碼庫    如果使用“cglib”則必要,必要

★   ehcache.jar   EHCache快取  如果沒有其它快取,則必要,必要

★   antlr.jar  ANother Tool for Language Recognition是一個工具,必要

★   jta.jar  JTA規範,當Hibernate使用JTA的時候需要,不過App Server都會帶上,所以也是多餘的。但是為了測試方便建議還是帶上。必要

★   commons-logging.jar  Apache Commons包中的一個,包含了日誌功能,必須使用的jar

包。必要

★   commons-collections.jar Apache Commons包中的一個,包含了一些Apache開發的集合類,功能比java.util.*強大。必要

★   dom4j是一個JavaXML API,類似於jdom,用來讀寫XML檔案的。Hibernate用它來讀寫配置檔案。必要

上面的就是Hibernate的核心jar包,是配置ssh架構中必須的,下面這些就是可選的了。

versioncheck.jar   版本檢查可選

swarmcache.jar   可選

jboss-cache.jar   TreeCache  可選

jgroups.jar   可選

xalan.jar, xerces.jar, xml-apis.jar Xerces

XML解析器,Xalan是格式化器,xml-apis實際上是JAXP。一般App Server都會帶上,JDK1.4也包含了解析器,不過不是Xerces,Crimson,效率比較差,不過HibernateXML只不過是讀取配置檔案,效能沒什麼要緊的,所以也是多餘的。可選

c3p0-0.9.1.jar  C3p0是一個數據庫連線池,Hibernate可以配置為使用C3P0連線池。如果你準備用這個連線池,就需要這個jar包。

可選

connector.jar    JCA API,如果你字啊App Server上把Hibernate配置為Connector的話,就需要這個Jar,不過實際上一般App Server肯定會帶上這個包,所以也是多餘的包可選

jboss-system.jar  可選

jboss-system.jar    使用TreeCache時必要可選

jacc-1_0-fr.jar   JACC可選

checkstyle-all.jar  可選

junit.jar   測試單元可選

javassist.jar  Javassist位元組碼直譯器可選

ant-lanuncher.jar   可選

jaas.jar     JAAS API 是用來進行許可權驗證的,已經包含在JDK1.4裡面了,所以實際上是個多餘的包可選

jdbc2_0-stdext.jar  JDBC擴充套件API,一般來說資料庫連線池會用上它,不過App Server都會帶上,所以也是多餘的。可選

ant-antlr.jar   Ant anlr支援可選

jboss-jmx.jar     可選

cleanimports.jar   cleanimports    可選

xerces.jar   SAXparser   jdk本版低於1.4時必要可選

jaxen-1.1-beta-7.jar  Jaxen  如果想提高啟動效能則去使用可選

ant-junit.jar     Ant junit support   可選

ant-swing.jar  ant swing support

ant.jar   Ant編譯工具的jar包,可選

proxool.jar   Proxool JDBC連線池可選

concurrent.jar   使用TreeCache 需要

syndiag2.jar   可選

commons.collections.jar,commons-pool.jar, commons-dbcp.jar  DBCP資料庫連線池,ApacheJakarta組織開發的,Tomcat的連線池也是DBCP.

Spring jar

spring.jar是包含有完整發布模組的單個jar 包。但是不包括mock.jar, aspects.jar, spring-portlet.jar, and spring-hibernate2.jar

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

spring-core.jar這個jar檔案包含Spring框架基本的核心工具類。Spring其它的元件要都要使用到這個包裡的類,是其它元件基本核心,當然你也可以在自己的系統中使用這些工具類。外部依賴(Commons Logging, Log4J)

spring-beans.jar這個jar檔案是所有應用都要使用到的,它包含訪問配置檔案,建立和管理bean以及進行Inversion of Control / DependencyIoC/DI)操作相關的所有類。如果應用只需基本的IoC/DI支援,引入spring-core.jarspring-beans.jar檔案就可以了。

spring-aop.jar這個jar檔案包含在應用中使用SpringAOP特性時所需的類和原始碼級元資料的支援。使用基於AOPSpring的特性,如宣告型事務管理(Declaritive Transaction Management),也要在應用裡包含這個jar包。外部依賴(spring-core, spring-bean , AOP Alliance, CGLIB, Commons Attributes).

spring-context.jar這個jar檔案為Spring核心提供了大量的擴充套件,可以找到Spring ApplicationContext特性時所需的全部類,JNDI所需的全部類,instrumentation元件以及校驗Validation方面的相關類。外部依賴spring-beans, spring-aop.

spring-dao.jar這個jar檔案包含Spring DAO, Spring Transaction進行資料訪問的所有類,為了使用宣告型事務支援,還需在自己的應用裡包含spring-aop.jar外部依賴spring-core, spring-aop, spring-context, JTA API.

spring-jdbc.jar這個jar檔案包含SpringJDBC資料訪問進行封裝的所有類。外部依賴spring-beans, spring-dao.

spring-support.jar這個jar檔案包含支援UI模板(Velocity, FreeMarker, JsperReports, BSH, Groovy, Jruby, Quartz, EHCache

spring-web.jar這個jar檔案包含Web應用開發時,用到Spring框架時所需的核心類,包括自動載入Web Application Context特性的類,StrutsJSF整合類,檔案上傳的支援類,Filter類和大量工具輔助類。外部依賴spring-context, Servlet API,(JSP API, JSTL, Commons FileUpload, COS).

spring-webmvc.jar這個jar檔案包含Spring MVC框架相關的所有類。包括框架的Servlets, Web MVC框架,控制器和檢視支援。當然,如果你的應用使用了獨立的框架,則無需這個JAR檔案裡的任何類。外部依賴spring-web, sping-support, Tiles, iText,POI.

spring-portlet.jarspring自己實現的一個類似Spring MVC的框架,包括一個MVC框架和一個控制器。外部依賴spring-web, Portlet API, Spring-webmvc.

spring-struts.jarStruts框架支援,可以更方便更容易的整合Struts框架,外部依賴spring-web, Struts.

spring-remoting.jar這個jar檔案包支援EJB,遠端呼叫Remoting(RMI,Hession, Burlap, Http Invoker, JAX-RPC)方面的類。外部依賴spring-aop, spring-context, spring-web,Hessian,Burlap,JAX-RPC,EJB API)。

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

spring-jms.jar這個jar包提供了對JMS1.0.2/1.1的支援類。

spring-jca.jar這個jar包提供了對JCA1.0的支援。

spring-jdo.jar這個jar包提供了對JDO1.0/2.0的支援。

spring-hibernate2.jarHibernate2.1的支援,已經不建議使用

spring-hibernate3.jarHibernate3.0/3.1/3.2的支援

spring-toplink.jarTopLink框架的支援

spring-ibatis.jarIbatis SQL Maps的支援。

另外的兩個包

spring-mock.jar這個jar 檔案包含Spring 一整套mock 類來輔助應用的測試。Spring 測試套件使用了其中大量mock 類,這樣測試就更加簡單。模擬HttpServletRequest HttpServletResponse 類在Web 應用單元測試是很方便的。並且提供了對JUnit的支援。外部依賴
spring-aspects.jar  
提供對AspectJ的支援,以便可以方便的將面向方面的功能整合進IDE.

Struts1.2包介紹:

commons-digester.jar Digester基於規則的XML文件解析,主要用於XMLJava物件的對映(用來處理struts-config.xml配置檔案,以達到通過XML生成相應的物件的功能)

commons-beanutils.jar提供對Java反射和自省API的包裝。

struts的驗證框架依賴以下的兩個包

commons-validator.jar(校驗方法)和校驗規則,支援校驗規則的和錯誤訊息的國際化。struts使用它對錶單進行驗證。

jakarta-oro.jar一套文字處理工具,能提供perl5.0相容的正則表示式AWK-like正則表示式,glob表示式。還提供替換,分割,檔名過濾等功能。

struts.jarstruts的核心Jar

antlr.jar它可以接受詞文法語言描述,並能產生識別這些語言的語句的程式。

Struts2.1.6jar包介紹

struts2-core-2.1.6.jarstruts2的核心jar包。

freemarker-2.3.13.jarFreemarkerstruts2預設的模版語言

commons-logging-1.0.4.jar

ognl-2.6.11.jarStruts2預設的表示式語言OGNL:物件圖形化導航語言

xwork-2.1.2.jar也是Struts2核心包,畢竟struts2很大部分是來自webwork

commons-io.jar(注意這個與2.0.x版本不同,即使不上傳檔案這個也是需要的)

commons-fileupload-1.2.1.jar(注意這個與2.0.x版本不同,即使不上傳檔案這個也是需要的)