Table 2-2: 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-1.1.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文件。
|
相关推荐
IOC负责降低我们代码间的依赖关系,使我们的项目灵活度更高,可复用性更强。AOP是让方法间的各个部分更加独立,达到统一调用执行,使后期维护更加的方便。 SpringMVC本身是对Servlet和JSP的API进行了封装,同时在此...
如果能够将“组件装配”工作抽象出来,我们就可以将MainApp的复杂依赖关系加以简化,从而 进一步实现解耦。为此,我们引入“工厂”模式,并利用配置文件和反射技术,动态加载和装配相关组件。 三、基于配置文件和...
而Spring框架则提供了一系列的企业级服务,如事务管理、依赖注入等,使得整个系统更加健壮、易于测试和部署。在这个资料包中,用户将会找到一个基于这三个框架的图书管理系统的完整源代码,包括了前端页面、控制器、...
同时,Spring框架以其依赖注入和面向切面编程的特性,为应用程序的配置和管理带来了极大的灵活性和扩展性。此源码资料包是针对那些希望深入理解如何结合这些流行框架来创建动态web应用的开发者而准备的。通过分析和...
Struts框架负责处理用户请求和页面跳转,Hibernate框架实现了对象关系映射(ORM),简化了数据库操作,而Spring框架则提供了依赖注入和事务管理等核心功能,降低了系统耦合度,提高了可维护性。 系统主要实现了车辆...
1.3.1 依赖注入 18 1.3.2 Java 配置 21 1.3.3 AOP 24 第2 章 Spring 常用配置 30 2.1 Bean 的Scope 30 2.1.1 点睛 30 2.1.2 示例 31 2.2 Spring EL 和资源调用. 33 2.2.1 点睛 33 2.2.2 示例 33 2.3 Bean 的初始化和...
1.3.1 依赖注入 18 1.3.2 Java 配置 21 1.3.3 AOP 24 第2 章 Spring 常用配置 30 2.1 Bean 的Scope 30 2.1.1 点睛 30 2.1.2 示例 31 2.2 Spring EL 和资源调用. 33 2.2.1 点睛 33 2.2.2 示例 33 2.3 Bean 的初始化和...
1.3.1 依赖注入 18 1.3.2 Java 配置 21 1.3.3 AOP 24 第2 章 Spring 常用配置 30 2.1 Bean 的Scope 30 2.1.1 点睛 30 2.1.2 示例 31 2.2 Spring EL 和资源调用. 33 2.2.1 点睛 33 2.2.2 示例 33 2.3 Bean 的初始化和...
为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;...
部署过程中需要注意的配置项、依赖关系等都进行了详细说明,确保开发者能够顺利完成部署工作。演示视频:为了让开发者更直观地了解系统的使用流程和功能特点,本项目还提供了一段演示视频。通过观看视频,开发者可以...
北风网推出的CRM项目除了在业务上的特色之外,还综合了Struts 2+ Spring + Hibernate+ Jfreechart+JQuery+AJAX的技术实现:利用Spring来解耦合,管理依赖,将整个应用进行整合;持久化层采用轻量级的ORM解决方案...
Java 开发⼯具:IntelliJ IDEA 前端框架:Vue 后端框架:Spring + SpringMVC + Mybatis 数据库: MySQL 技术选型说明:Spring的IOC特性,将对象之间的依赖关系交给了Spring控制,⽅便解耦,简化了开发。其AOP特性,...
同时,代码中也充分应用了Spring Boot的各种特性,如自动配置、依赖注入等,展示了Spring Boot在Java Web开发中的优势。 这份资源和毕业论文不仅为学生提供了一个毕业设计的参考模板,也为Java Web开发者提供了一个...
本文实例讲述了AngularJS中$injector、$rootScope和$scope的概念和关联关系。分享给大家供大家参考,具体如下: $injector、$rootScope和$scope是AngularJS框架中...详情参考这篇文章:《AngularJS的依赖注入实例分析
"weixin050高校体育场管理系统+ssm(源码+部署说明+演示视频+源码介绍+lw).rar" 这个资源包是一个针对高校体育场地管理的软件系统,它使用了SSM框架(Spring + SpringMVC + MyBatis)进行开发。以下是对该系统的...
数据库: 系统可能使用MySQL、PostgreSQL或其他关系型数据库来存储数据,通过JPA (Java Persistence API) 或者MyBatis等ORM (Object-Relational Mapping) 工具与Spring Boot集成,实现数据的持久化。中间件: 为了提高...