SSH框架整合jar包,手動(dòng)整合三大框架,避免重復(fù)和冗余jar包出現(xiàn)
必要:
Hibernate Jar: hibernate3.jar,這個(gè)是hibernate3.0的核心jar包,必須的,呵呵,沒(méi)的選,像我們常用的Session,Query,Transaction都位于這個(gè)jar文件中,必要。
cglib-2.1.3.jar,CGLIB庫(kù),Hibernate用它來(lái)實(shí)現(xiàn)PO字節(jié)碼的動(dòng)態(tài)生成,非常核心的庫(kù),必要。
asm.jar ASM字節(jié)碼庫(kù) 如果使用“cglib”則必要,必要
asm-attrs.jar ASM字節(jié)碼庫(kù) 如果使用“cglib”則必要,必要
ehcache.jar EHCache緩存 如果沒(méi)有其它緩存,則必要,必要
antlr.jar
ANother Tool for Language Recognition是一個(gè)工具,必要
jta.jar JTA規(guī)范,當(dāng)Hibernate使用JTA的時(shí)候需要,不過(guò)App Server都會(huì)帶上,所以也是多余的。但是為了測(cè)試方便建議還是帶上。必要
commons-logging.jar Apache Commons包中的一個(gè),包含了日志功能,必須使用的jar包。必要
commons-collections.jar Apache Commons包中的一個(gè),包含了一些Apache開(kāi)發(fā)的集合類(lèi),功能比java.util.*強(qiáng)大。必要
dom4j是一個(gè)Java的XML API,類(lèi)似于jdom,用來(lái)讀寫(xiě)XML文件的。Hibernate用它來(lái)讀寫(xiě)配置文件。必要
上面的就是Hibernate的核心jar包,是配置ssh架構(gòu)中必須的,下面這些就是可選的了。
versioncheck.jar 版本檢查 可選
swarmcache.jar 可選
jboss-cache.jar TreeCache 可選
jgroups.jar 可選
xalan.jar, xerces.jar, xml-apis.jar Xerces是XML解析器,Xalan是格式化器,xml-apis實(shí)際上是JAXP。一般App Server都會(huì)帶上,JDK1.4也包含了解析器,不過(guò)不是Xerces,是Crimson,效率比較差,不過(guò)Hibernate用XML只不過(guò)是讀取配置文件,性能沒(méi)什么要緊的,所以也是多余的?蛇x
c3p0-0.9.1.jar C3p0是一個(gè)數(shù)據(jù)庫(kù)連接池,Hibernate可以配置為使用C3P0連接池。如果你準(zhǔn)備用這個(gè)連接池,就需要這個(gè)jar包。
可選
connector.jar JCA API,如果你字啊App Server上把Hibernate配置為Connector的話,就需要這個(gè)Jar,不過(guò)實(shí)際上一般App Server肯定會(huì)帶上這個(gè)包,所以也是多余的包 可選jboss-system.jar 可選
jboss-system.jar 使用TreeCache時(shí)必要 可選
jacc-1_0-fr.jar JACC庫(kù) 可選
checkstyle-all.jar 可選
junit.jar 測(cè)試單元 可選
javassist.jar Javassist字節(jié)碼解釋器 可選
ant-lanuncher.jar 可選
jaas.jar JAAS API 是用來(lái)進(jìn)行權(quán)限驗(yàn)證的,已經(jīng)包含在JDK1.4里面了,所以實(shí)際上是個(gè)多余的包 可選
jdbc2_0-stdext.jar JDBC擴(kuò)展API,一般來(lái)說(shuō)數(shù)據(jù)庫(kù)連接池會(huì)用上它,不過(guò)App Server都會(huì)帶上,所以也是多余的。 可選
ant-antlr.jar Ant anlr支持 可選
jboss-jmx.jar 可選
cleanimports.jar cleanimports 可選 xerces.jar SAX parser jdk本版低于1.4時(shí)必要 可選
jaxen-1.1-beta-7.jar Jaxen 如果想提高啟動(dòng)性能則去使用 可選
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數(shù)據(jù)庫(kù)連接池,Apache的Jakarta組織開(kāi)發(fā)的,Tomcat的連接池也是DBCP.
Spring jar 包
spring.jar 是包含有完整發(fā)布模塊的單個(gè)jar 包。但是不包括mock.jar, aspects.jar, spring-portlet.jar, and spring-hibernate2.jar。
除了spring.jar文件,Spring還包括有其它21個(gè)獨(dú)立的jar包,各自包含著對(duì)應(yīng)的Spring組件,用戶可以根據(jù)自己的需要來(lái)選擇組合,而不必引入整個(gè)spring.jar的所有類(lèi)文件。
spring-core.jar 這個(gè)jar文件包含Spring框架基本的核心工具類(lèi)。Spring其它的組件要都要使用到這個(gè)包里的類(lèi),是其它組件基本核心,當(dāng)然你也可以在自己的系統(tǒng)中使用這些工具類(lèi)。外部依賴(lài)(Commons Logging, Log4J)
spring-beans.jar 這個(gè)jar文件是所有應(yīng)用都要使用到的,它包含訪問(wèn)配置文件,創(chuàng)建和管理bean以及進(jìn)行Inversion of Control / Dependency(IoC/DI)操作相關(guān)的所有類(lèi)。如果應(yīng)用只需基本的IoC/DI支持,引入spring-core.jar及spring-beans.jar文件就可以了。
spring-aop.jar 這個(gè)jar文件包含在應(yīng)用中使用Spring的AOP特性時(shí)所需的類(lèi)和源碼級(jí)元數(shù)據(jù)的支持。使用基于AOP的Spring的特性,如聲明型事務(wù)管理(Declaritive Transaction Management),也要在應(yīng)用里包含這個(gè)jar包。外部依賴(lài)(spring-core, spring-bean , AOP Alliance, CGLIB, Commons Attributes).
spring-context.jar 這個(gè)jar文件為Spring核心提供了大量的擴(kuò)展,可以找到Spring ApplicationContext特性時(shí)所需的全部類(lèi),JNDI所需的全部類(lèi),instrumentation組件以及校驗(yàn)Validation方面的相關(guān)類(lèi)。外部依賴(lài)spring-beans, spring-aop.
spring-dao.jar 這個(gè)jar文件包含Spring DAO, Spring Transaction進(jìn)行數(shù)據(jù)訪問(wèn)的所有類(lèi),為了使用聲明型事務(wù)支持,還需在自己的應(yīng)用里包含spring-aop.jar外部依賴(lài)spring-core, spring-aop, spring-context, JTA API.
spring-jdbc.jar這個(gè)jar文件包含Spring對(duì)JDBC數(shù)據(jù)訪問(wèn)進(jìn)行封裝的所有類(lèi)。外部依賴(lài)spring-beans, spring-dao.
spring-support.jar 這個(gè)jar文件包含支持UI模板(Velocity, FreeMarker, JsperReports, BSH, Groovy, Jruby, Quartz, EHCache)
spring-web.jar 這個(gè)jar文件包含Web應(yīng)用開(kāi)發(fā)時(shí),用到Spring框架時(shí)所需的核心類(lèi),包括自動(dòng)載入Web Application Context特性的類(lèi),Struts與JSF集成類(lèi),文件上傳的支持類(lèi),F(xiàn)ilter類(lèi)和大量工具輔助類(lèi)。外部依賴(lài)spring-context, Servlet API,(JSP API, JSTL, Commons FileUpload, COS).
spring-webmvc.jar 這個(gè)jar文件包含Spring MVC框架相關(guān)的所有類(lèi)。包括框架的Servlets, Web MVC框架,控制器和視圖支持。當(dāng)然,如果你的應(yīng)用使用了獨(dú)立的框架,則無(wú)需這個(gè)JAR文件里的任何類(lèi)。外部依賴(lài)spring-web, sping-support, Tiles, iText,POI.
spring-portlet.jar spring自己實(shí)現(xiàn)的一個(gè)類(lèi)似Spring MVC的框架,包括一個(gè)MVC框架和一個(gè)控制器。外部依賴(lài)spring-web, Portlet API, Spring-webmvc.
spring-struts.jar Struts框架支持,可以更方便更容易的集成Struts框架,外部依賴(lài)spring-web, Struts.
spring-remoting.jar 這個(gè)jar文件包支持EJB,遠(yuǎn)程調(diào)用Remoting(RMI,Hession, Burlap, Http Invoker, JAX-RPC)方面的類(lèi)。外部依賴(lài)spring-aop, spring-context, spring-web,Hessian,Burlap,JAX-RPC,EJB API)。
spring-jmx.jar 這個(gè)jar包提供了對(duì)JMX1.0/1.2的支持類(lèi)。外部依賴(lài)spring-beans, spring-aop, JMX API.
spring-jms.jar 這個(gè)jar包提供了對(duì)JMS1.0.2/1.1的支持類(lèi)。
spring-jca.jar 這個(gè)jar包提供了對(duì)JCA1.0的支持。
spring-jdo.jar 這個(gè)jar包提供了對(duì)JDO1.0/2.0的支持。
spring-hibernate2.jar 對(duì)Hibernate2.1的支持,已經(jīng)不建議使用
spring-hibernate3.jar 對(duì)Hibernate3.0/3.1/3.2的支持
spring-toplink.jar對(duì)TopLink框架的支持 spring-ibatis.jar 對(duì)Ibatis SQL Maps的支持。
另外的兩個(gè)包
spring-mock.jar 這個(gè)jar 文件包含Spring 一整套mock 類(lèi)來(lái)輔助應(yīng)用的測(cè)試。Spring 測(cè)試套件使用了其中大量mock 類(lèi),這樣測(cè)試就更加簡(jiǎn)單。模擬HttpServletRequest 和HttpServletResponse 類(lèi)在Web 應(yīng)用單元測(cè)試是很方便的。并且提供了對(duì)JUnit的支持。外部依賴(lài)spring-aspects.jar 提供對(duì)AspectJ的支持,以便可以方便的將面向方面的功能集成進(jìn)IDE中.
Struts1.2包介紹:
commons-digester.jar Digester基于規(guī)則的XML文檔解析,主要用于XML到Java對(duì)象的映射(用來(lái)處理struts-config.xml配置文件,以達(dá)到通過(guò)XML生成相應(yīng)的對(duì)象的功能)。
commons-beanutils.jar 提供對(duì)Java反射和自省API的包裝。
struts的驗(yàn)證框架依賴(lài)以下的兩個(gè)包
commons-validator.jar(校驗(yàn)方法)和校驗(yàn)規(guī)則,支持校驗(yàn)規(guī)則的和錯(cuò)誤消息的國(guó)際化。struts使用它對(duì)表單進(jìn)行驗(yàn)證。
jakarta-oro.jar 一套文本處理工具,能提供perl5.0兼容的正則表達(dá)式AWK-like正則表達(dá)式,glob表達(dá)式。還提供替換,分割,文件名過(guò)濾等功能。
struts.jar struts的核心Jar包
antlr.jar 它可以接受詞文法語(yǔ)言描述,并能產(chǎn)生識(shí)別這些語(yǔ)言的語(yǔ)句的程序。
Struts2.1.6jar包介紹
struts2-core-2.1.6.jar struts2的核心jar包。
freemarker-2.3.13.jar Freemarker是struts2默認(rèn)的模版語(yǔ)言
commons-logging-1.0.4.jar
ognl-2.6.11.jar Struts2默認(rèn)的表達(dá)式語(yǔ)言O(shè)GNL:對(duì)象圖形化導(dǎo)航語(yǔ)言
xwork-2.1.2.jar 也是Struts2核心包,畢竟struts2很大部分是來(lái)自webwork
commons-io.jar (注意這個(gè)與2.0.x版本不同,即使不上傳文件這個(gè)也是需要的)
commons-fileupload-1.2.1.jar(注意這個(gè)與2.0.x版本不同,即使不上傳文件這個(gè)也是需要的)。