天天看點

Spring 依賴的Jar包簡介

Spring的依賴關系
依賴關系分組 JAR檔案 說 明
aopalliance aopalliance.jar AOP Alliance(http://aopalliance.sourceforge.net/)是個聯合的開源協作組織,在多個項目間進行協作以期提供一套标準的AOP Java接口(interface)。 Spring AOP就是基于AOP Alliance标準API實作的。如果你打算使用Spring的AOP或基于AOP的任何特性,隻需這個JAR檔案。
ant ant.jar, ant-junit.jar, ant-launcher.jar Spring采用Apache Ant作為其建構工具,還用來完成大量其它任務如文檔生成和測試執行等。運作時Ant根本不起作用,是以釋出應用時無需包含該JAR檔案。
axis axis.jar, saaj.jar, wsdl4j.jar Spring采用Apache Axis項目來支援Spring遠端調用裡的JAXRPC功能。如果使用JAXRPC Remoting,那麼隻需要這些檔案。
caucho burlap-2.1.12.jar, hessian-2.1.12.jar Spring遠端調用(remoting)對大量不同種類的協定包括Caucho的Burlap和Hessian提供了支援。要用哪個協定就包含這個分組裡相應的JAR檔案。
cglib cglib-full-2.0.2.jar CGLIB用來生成動态代理類(dynamic proxy classes),供核心DI和AOP實作之用。由于大量Spring功能的實作都要用到CGLIB,是以你的應用幾乎總需包含CGLIB。
cos cos.jar COS代表com.oreilly.servlet,是個實用類的集合,對Servlets和基于web的應用很有用。Spring在兩個地方要用到COS:檔案上傳處理和e-mail發送。不過在這兩種情形中,COS都隻是實作選擇之一,是以隻有選用COS而非其它實作方法時,才需包含cos.jar。
dom4j dom4j.jar 使用Hibernate時dom4j不可或缺,是以如果你的應用打算采用Hibernate實作ORM,就需要包含這個JAR檔案。
easymock easymock.jar, easymockclassextension.jar Spring的測試套件用到了EasyMock,是以隻有建構和運作測試套件時才用到這個JAR,無需随你的應用一起釋出。
freemarker freemaker.jar Spring提供了FreeMarker模闆引擎的包裝類,還為把FreeMarker模闆用作web應用的視圖提供了支援。隻要使用FreeMarker,就需要這個JAR檔案。
hibernate ehcache.jar, hibernate2.jar, odmg.jar 如果采用Spring的Hibernate內建和支援類,這些JAR檔案不可或缺。如果使用其它ORM工具如iBATIS,則不需要這些JAR檔案。如果使用Hibernate,則你的應用還要包含CGLIB JAR檔案。
hsqldb hsqldb.jar Spring的示例應用使用了hsqldb.jar檔案。
ibatis ibatis-common.jar , ibatis-sqlmap.jar, ibatis-sqlmap-2.jar 使用Spring的iBATIS內建類時,這些檔案不可或缺;如果使用JDBC或其它ORM工具如Hibernate或JDO,則你的應用不需要這些檔案。
itext itext-1.02b.jar Spring使用iText提供web層的PDF支援。隻有你的web應用需要生成PDF輸出時才需包含這個JAR檔案。
j2ee activation.jar, connector-api.jar, ejb.jar, jaxrpc.jar, jdbc2_0-stdext.jar, jms.jar, jstl.jar, jta.jar, mail.jar, servlet.jar, xml-apis.jar 如左側所示,J2EE相關的各種不同JAR檔案數量相當可觀。如果你想要使用Spring郵件支援的JavaMail實作,則需要activation.jar和mail.jar檔案。要讓Hibernate使用JCA Connector則需connector-api.jar,使用Spring的EJB支援則需要ejb.jar,jms.jar用于Spring的JMS支援。對于web應用,如果想要使用Spring JSTL支援則需要servlet.jar和jstl.jar。Spring遠端調用裡的JAXRPC支援需要jaxrpc.jar檔案,jta.jar用于JTA事務支援。剩下兩個JAR檔案jdbc2_0-stdext.jar和xml-apis.jar分别用于JDBC和XML配置支援,不過隻有你使用1.3版本的JVM時才需要它們。
jakarta jakarta-commons commons-attributes-api.jar, commons-attributes-compiler.jar, commons-beanutils.jar, commons-collections.jar, commons-dbcp.jar, commons-digester.jar, commons-discovery.jar, commons-fileupload.jar, commons-lang.jar, commons-logging.jar, commons-pool.jar, commons- validator.jar Spring使用了來自Jakarta Commons項目的大量元件。如果你想在應用中使用源碼級中繼資料(metadata),就需要commons-attributes-api.jar,此外還需要commons-attributes-compiler.jar,以便将attributes編譯到應用裡。Struts要用到BeanUtils、Collections、Digester、Discovery,和Validator JAR檔案,其中的Collections,Hibernate也會用到。使用DBCP連接配接池時,Spring JDBC支援要用到DBCP,Pooling則對有些示例應用不可或缺。如果想使用相應的Spring包裝類來處理web應用的檔案上傳,則需要FileUpload。最後,Spring處處用到了Logging,是以需在所有基于Spring的應用裡包含這個JAR檔案。
jakarta-taglibs standard.jar 這是Jakarta的JSTL實作,一些Spring示例應用使用了這個實作。
jboss jboss-common-jdbc-wrapper.jar 運作在JBoss應用伺服器上的應用使用Spring的JDBC類時,這個JAR檔案不可或缺。
jdo jdo.jar 提供Spring的JDO支援。
jdom jdom.jar 在Spring裡使用iBATIS 1.3時,JDOM不可或缺。本章介紹的iBATIS版本為2.0。
jotm jotm.jar, xapool.jar 如果你打算配合Spring事務抽象層一起使用JOTM,jotm.jar檔案不可或缺。如果打算在自己的應用裡将XAPool用于連接配接池(connection pooling),則隻需xapool.jar。
junit junit.jar 運作時根本不需要JUnit;它隻用來建構和運作測試套件。
log4j log4j-1.2.8.jar 如果想要使用Spring配置log4j日志記錄,這個檔案不可或缺。
poi poi-2.5.jar 這個JAR可令Spring MVC架構支援Microsoft Excel輸出。
quartz quartz.jar Spring基于Quartz的排程支援需要該JAR。
regexp Jakarta-oro-2.0.7.jar 使用正規表達式來指定AOP的切入點(pointcut)時需要這個JAR。第六章有更詳細的介紹。
struts struts.jar 欲配合Spring使用Struts建構web應用,Struts JAR必不可少。
velocity velocity-1.4.jar, velocity-tools-generic-1.1.jar Spring提供了Velocity的包裝類使其支援DI,同時當你在應用中使用Velocity時,還可減少需要編寫的代碼量。除此之外,Spring還提供了一些類,支援将Velocity用作web層裡的視圖提供者(view provider)。隻要使用了上述任意特性,都需在釋出裡包含Velocity JAR檔案。
xdoclet xjavadoc-1.0.jar Commons Attributes用這個JAR解析源代碼檔案,然後提取屬性資訊。如果使用了Spring Commons Attributes支援,須包含該JAR檔案。