[java] Struts、Spring、Hibernate——Jar包下载及作用

按照你想要的版本下载就可以了

struts的下载地址: http://struts.apache.org/download.cgi#struts1310

 

myeclipse可以添加struts1.2等libraries其中包含 apache公司写了一系列的工具包,比如comm-XXXXX这些呢都是可以独立的,而struts.jar是依存这些的,  比如说commons-collections.jar是扩展了集合框架的一个工具包,commons-beanutils.jar是对javaBean操作的一个工具包,commons-lang.jar扩展了java中的lang包,  commons-validator.jar是做难证的一个工具包,而struts.jar是struts框架的核心包,但它必须依存于这些包.  struts框架中必须要加的包:  commons-beanutils.jar   : commons-beanutils.jar 提供对Java 反射和自省API的包装.

commons-digester.jar :Digester基于规则的XML文档解析,主要用于XML到Java对象的映射.  commons-fileupload.jar

commons-logging.jar  commons-validator.jar  jakarta-oro.jar   ? struts.jar antlr.jar:语法分析生成器 servlet_api.jar 这里有一些常用JAR包的说明: commons-digester.jar Digester基于规则的XML文档解析,主要用于XML到Java对象的映射.

commons-beanutils.jar  提供对Java 反射和自省API的包装.

aspectjweaver.jar  用于在Spring 2.0中集成AspectJ AspectJ LTW织入器

ognl.jar  OGNL是Object-Graph Navigation Language的缩写,它是一种功能强大的表达式语言(Expression Language,简称为EL),通过它简单一致的表达式语法,可以存取对象的任意属性,调用对象的方法,遍历整个对象的结构图,实现字段类型转化等功能。它使用相同的表达式去存取对象的属性。

hibernate2依赖的一些包  hibernate2.jar  Hibernate的库,没有什么可说的,必须使用的jar包

cglib-asm.jar:  CGLIB库,Hibernate用它来实现PO字节码的动态生成,非常核心的库,必须使用的jar包

dom4j.jar:    dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的。dom4j是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件,可以在SourceForge上找到它。在IBM developerWorks上面可以找到一篇文章,对主流的Java XML API进行的性能、功能和易用性的评测,dom4j无论在那个方面都是非常出色的。我早在将近两年之前就开始使用dom4j,直到现在。如今你可以看到越来越多的Java软件都在使用dom4j来读写XML,特别值得一提的是连Sun的JAXM也在用dom4j。这是必须使用的jar包,Hibernate用它来读写配置文件。

odmg.jar:  ODMG是一个ORM的规范,Hibernate实现了ODMG规范,这是一个核心的库,必须使用的jar包。

commons-collections.jar:  Apache Commons包中的一个,包含了一些Apache开发的集合类,功能比java.util.*强大。必须使用的jar包。

commons-beanutils.jar:  Apache Commons包中的一个,包含了一些Bean工具类类。必须使用的jar包。

commons-lang.jar:  Apache Commons包中的一个,包含了一些数据类型工具类,是java.lang.*的扩展。必须使用的jar包。

commons-logging.jar:  Apache Commons包中的一个,包含了日志功能,必须使用的jar包。这个包本身包含了一个Simple Logger,但是功能很弱。在运行的时候它会先在CLASSPATH找log4j,如果有,就使用log4j,如果没有,就找JDK1.4带的java.util.logging,如果也找不到就用Simple Logger。commons-logging.jar的出现是一个历史的的遗留的遗憾,当初Apache极力游说Sun把log4j加入JDK1.4,然而JDK1.4项目小组已经接近发布JDK1.4产品的时间了,因此拒绝了Apache的要求,使用自己的java.util.logging,这个包的功能比log4j差的很远,性能也一般。

后来Apache就开发出来了commons-logging.jar用来兼容两个logger。因此用commons-logging.jar写的log程序,底层的Logger是可以切换的,你可以选择log4j,java.util.logging或者它自带的Simple Logger。不过我仍然强烈建议使用log4j,因为log4j性能很高,log输出信息时间几乎等于System.out,而处理一条log平均只需要5us。你可以在Hibernate的src目录下找到Hibernate已经为你准备好了的log4j的配置文件,你只需要到Apache 网站去下载log4j就可以了。commons-logging.jar也是必须的jar包。

使用Hibernate必须的jar包就是以上的这几个,剩下的都是可选的。

ant.jar:  Ant编译工具的jar包,用来编译Hibernate源代码的。如果你不准备修改和编译Hibernate源代码,那么就没有什么用,可选的jar包

optional.jar:  Ant的一个辅助包。

c3p0.jar:  C3PO是一个数据库连接池,Hibernate可以配置为使用C3PO连接池。如果你准备用这个连接池,就需要这个jar包。

proxool.jar:  也是一个连接池,同上。

commons-pool.jar,

commons-dbcp.jar:  DBCP数据库连接池,Apache的Jakarta组织开发的,Tomcat4的连接池也是DBCP。  实际上Hibernate自己也实现了一个非常非常简单的数据库连接池,加上上面3个,你实际上可以在Hibernate上选择4种不同的数据库连接池,选择哪一个看个人的偏好,不过DBCP可能更通用一些。另外强调一点,如果在EJB中使用Hibernate,一定要用App Server的连接池,不要用以上4种连接池,否则容器管理事务不起作用。

connector.jar:  JCA 规范,如果你在App Server上把Hibernate配置为Connector的话,就需要这个jar。不过实际上一般App Server肯定会带上这个包,所以实际上是多余的包。

jaas.jar:  JAAS是用来进行权限验证的,已经包含在JDK1.4里面了。所以实际上是多余的包。

jcs.jar:  如果你准备在Hibernate中使用JCS的话,那么必须包括它,否则就不用。

jdbc2_0-stdext.jar:    JDBC2.0的扩展包,一般来说数据库连接池会用上它。不过App Server都会带上,所以也是多余的。

jta.jar:    JTA规范,当Hibernate使用JTA的时候需要,不过App Server都会带上,所以也是多余的。

junit.jar:  Junit包,当你运行Hibernate自带的测试代码的时候需要,否则就不用。

xalan.jar, xerces.jar, xml-apis.jar:    Xerces是XML解析器,Xalan是格式化器,xml-apis实际上是JAXP。一般App Server都会带上,JDK1.4也包含了解析器,不过不是Xerces,是Crimson,效率比较差,不过Hibernate用XML只不过是读取配置文件,性能没什么紧要的,所以也是多余的。

antlr.jar  语法生成工具详见

hibernate的下载地址: http://hibernate.org/downloads.html

1)hibernate3.jar:   Hibernate的核心库,没有什么可说的,必须使用的jar包 (2)cglib-asm.jar:   CGLIB库,Hibernate用它来实现PO字节码的动态生成,非常核心的库,必须使用的jar包 (3)dom4j.jar:   dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的。dom4j是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件,可以在SourceForge上找到它。在IBM developerWorks上面可以找到一篇文章,对主流的Java XML API进行的性能、功能和易用性的评测,dom4j无论在那个方面都是非常出色的。我早在将近两年之前就开始使用dom4j,直到现在。如今你可以看到越来越多的Java软件都在使用dom4j来读写XML,特别值得一提的是连Sun的JAXM也在用dom4j。这是必须使用的jar包,Hibernate用它来读写配置文件。

(4)odmg.jar:   ODMG是一个ORM的规范,Hibernate实现了ODMG规范,这是一个核心的库,必须使用的jar包。

(5)commons-collections.jar:   Apache Commons包中的一个,包含了一些Apache开发的集合类,功能比java.util.*强大。必须使用的jar包。

(6)commons-beanutils.jar:   Apache Commons包中的一个,包含了一些Bean工具类类。必须使用的jar包。

(7)commons-lang.jar:   Apache Commons包中的一个,包含了一些数据类型工具类,是java.lang.*的扩展。必须使用的jar包。

(8)commons-logging.jar:   Apache Commons包中的一个,包含了日志功能,必须使用的jar包。这个包本身包含了一个Simple Logger,但是功能很弱。在运行的时候它会先在CLASSPATH找log4j,如果有,就使用log4j,如果没有,就找JDK1.4带的java.util.logging,如果也找不到就用Simple Logger。commons-logging.jar的出现是一个历史的的遗留的遗憾,当初Apache极力游说Sun把log4j加入JDK1.4,然而JDK1.4项目小组已经接近发布JDK1.4产品的时间了,因此拒绝了Apache的要求,使用自己的java.util.logging,这个包的功能比log4j差的很远,性能也一般。

  后来Apache就开发出来了commons-logging.jar用来兼容两个logger。因此用commons-logging.jar写的log程序,底层的Logger是可以切换的,你可以选择log4j,java.util.logging或者它自带的Simple Logger。不过我仍然强烈建议使用log4j,因为log4j性能很高,log输出信息时间几乎等于System.out,而处理一条log平均只需要5us。你可以在Hibernate的src目录下找到Hibernate已经为你准备好了的log4j的配置文件,你只需要到Apache 网站去下载log4j就可以了。commons-logging.jar也是必须的jar包。

使用Hibernate必须的jar包就是以上的这几个,剩下的都是可选的。   ant.jar:   Ant编译工具的jar包,用来编译Hibernate源代码的。如果你不准备修改和编译Hibernate源代码,那么就没有什么用,可选的jar包

  optional.jar:   Ant的一个辅助包。

  c3p0.jar:   C3PO是一个数据库连接池,Hibernate可以配置为使用C3PO连接池。如果你准备用这个连接池,就需要这个jar包。

  proxool.jar:   也是一个连接池,同上。

  commons-pool.jar, commons-dbcp.jar:   DBCP数据库连接池,Apache的Jakarta组织开发的,Tomcat4的连接池也是DBCP。

  实际上Hibernate自己也实现了一个非常非常简单的数据库连接池,加上上面3个,你实际上可以在Hibernate上选择4种不同的数据库连接池,选择哪一个看个人的偏好,不过DBCP可能更通用一些。另外强调一点,如果在EJB中使用Hibernate,一定要用App Server的连接池,不要用以上4种连接池,否则容器管理事务不起作用。

  connector.jar:   JCA 规范,如果你在App Server上把Hibernate配置为Connector的话,就需要这个jar。不过实际上一般App Server肯定会带上这个包,所以实际上是多余的包。

  jaas.jar:   JAAS是用来进行权限验证的,已经包含在JDK1.4里面了。所以实际上是多余的包。

  jcs.jar:   如果你准备在Hibernate中使用JCS的话,那么必须包括它,否则就不用。

  jdbc2_0-stdext.jar:   JDBC2.0的扩展包,一般来说数据库连接池会用上它。不过App Server都会带上,所以也是多余的。

  jta.jar:   JTA规范,当Hibernate使用JTA的时候需要,不过App Server都会带上,所以也是多余的。

  junit.jar:   Junit包,当你运行Hibernate自带的测试代码的时候需要,否则就不用。

  xalan.jar, xerces.jar, xml-apis.jar:   Xerces是XML解析器,Xalan是格式化器,xml-apis实际上是JAXP。一般App Server都会带上,JDK1.4也包含了解析器,不过不是Xerces,是Crimson,效率比较差,不过Hibernate用XML只不过是读取配置文件,性能没什么紧要的,所以也是多余的。 ant-1.63.jarAnt 的核心包,在构建Hibernate 时会用到 antlr-2.7.5H3.jar语言转换工,Hibernate利用它实现 HQL 到 SQL的转换 asm.jar/asm-attrs.jar ASM 字节转换库 c3p0-0.8.5.2.jarC3PO JDBC 连接池工具 cglib-2.1.jar高效的代码生成工具, Hibernate用它在运行时扩展 Java类和实现 Java 接口 commons-collections-2.1.1.jarApache 的工具集,用来增强Java对集合的处理能力 commons-logging-1.0.4.jarApache 软件基我组所提供的日志工具 concurrent-1.3.2.jar线程同步工具,在使用JBoss 的树状缓存时需要用到 connector.jar用连接多个应用服务器的标准连接器 dom4j-1.6.jardom4j XML 解析器 ehcache-1.1.jar缓存工具.在没有提供其他缓存工具时,这个缓存工具是必不可少的 jaas.jar标准的 Java 权限和认证服务包 jaxen-1.1-beta-4.jar通用的 XPath 处理引擎 jboss-cache.jarJBoss 的一种树状缓存实现工具 jboss-common.jarJboss 的基础包,在使用 JBoss 的树状缓存时必须有此包 jboss-jmx.jarJBoss 的 JMX 实现包 jboss-system.jarJBoss 的核心,包括服务器和部署引擎 jdbc2_0-stdext.jar标准的 JDBC 2.0 扩展API jgroups2.2.7.jar网络通信工具包 jta.jar标准的 JAVA 事务处理接口 junit-3.8.1.jarJUnit 测试框架 log4.j-1.2.9.jarlog4j 库,Apache 的日志工具 oscache-2.1.jarJava 对象的缓存工具 proxool-0.8.3.jarProxool JDBC 连接池 工具 swarmcache-1.0rc2.jarHibernate 可以使用的一种缓存工具 versioncheck.jar 版本检查工具包,用于在构建 Hibernate 的时候检查辅助 jar 包文件的版本 xerces-2.6.2.jarSAX XML 解析器 xml-apis.jarJava语言中标准的XML 解析器


spring的下载地址:
http://www.springsource.org/download


Spring的依赖关系

依赖关系分组  JAR文件  说 明
ant ant.jar, ant-junit.jar, ant-launcher.jar Spring采用Apache Ant作为其构建工具,还用来完成大量其它任务如文档生成和测试执行等。运行时Ant根本不起作用,因此发布应用时无需包含该JAR文件。
aopalliance aopalliance.jar AOP Alliance(http://aopalliance.sourceforge.net/)是个联合的开源协作组织,在多个项目间进行协作以期提供一套标准的AOP Java接口(interface)。 Spring AOP就是基于AOP Alliance标准API实现的。如果你打算使用Spring的AOP或基于AOP的任何特性,只需这个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文件。






你可能感兴趣的:(java,spring,Hibernate,struts,数据库连接池,jar)