spring jar 包详解
spring.jar是包含有完整发布的单个jar包,spring.jar中包含除了
spring-mock.jar里所包含的内容外其它所有jar包的内容,因为只有在开发环境下才会用到spring-mock.jar来进行辅助测试,
正式应用系统中是用不得这些类的。
除了spring.jar文件,Spring还包括有其它13个独立的jar包,各自包含着对应的Spring组件,用户可以根据自己的需要来选择组合自己的jar包,而不必引入整个spring.jar的所有类文件。
(1) spring-core.jar
这个jar文件包含Spring框架基本的核心工具类,Spring其它组件要都要使用到这个包里的类,是其它组件的基本核心,当然你也可以在自己的应用系统中使用这些工具类。
(2) spring-beans.jar
这
个jar文件是所有应用都要用到的,它包含访问配置文件、创建和管理bean以及进行Inversion of Control /
Dependency
Injection(IoC/DI)操作相关的所有类。如果应用只需基本的IoC/DI支持,引入spring-core.jar及spring-
beans.jar文件就可以了。
(3) spring-aop.jar
这个jar文件包含在应用中使用Spring的AOP特性时所需的类。使用基于AOP的Spring特性,如声明型事务管理(Declarative Transaction Management),也要在应用里包含这个jar包。
(4) spring-context.jar
这个jar文件为Spring核心提供了大量扩展。可以找到使用Spring
ApplicationContext特性时所需的全部类,JDNI所需的全部类,UI方面的用来与模板(Templating)引擎如
Velocity、FreeMarker、JasperReports集成的类,以及校验Validation方面的相关类。
(5) spring-dao.jar
这个jar文件包含Spring DAO、Spring Transaction进行数据访问的所有类。为了使用声明型事务支持,还需在自己的应用里包含spring-aop.jar。
(6) spring-hibernate.jar
这个jar文件包含Spring对Hibernate 2及Hibernate 3进行封装的所有类。
(7) spring-jdbc.jar
这个jar文件包含对Spring对JDBC数据访问进行封装的所有类。
(8) spring-orm.jar
这个jar文件包含Spring对DAO特性集进行了扩展,使其支持
iBATIS、JDO、OJB、TopLink,因为Hibernate已经独立成包了,现在不包含在这个包里了。这个jar文件里大部分的类都要依赖
spring-dao.jar里的类,用这个包时你需要同时包含spring-dao.jar包。
(9) spring-remoting.jar
这个jar文件包含支持EJB、JMS、远程调用Remoting(RMI、Hessian、Burlap、Http Invoker、JAX-RPC)方面的类。
(10) spring-support.jar
这个jar文件包含支持缓存Cache(ehcache)、JCA、JMX、邮件服务(Java Mail、COS Mail)、任务计划Scheduling(Timer、Quartz)方面的类。
(11) spring-web.jar
这个jar文件包含Web应用开发时,用到Spring框架时所需的核心类,包括自动载入WebApplicationContext特性的类、Struts与JSF集成类、文件上传的支持类、Filter类和大量工具辅助类。
(12) spring-webmvc.jar
这个jar文件包含Spring
MVC框架相关的所有类。包含国际化、标签、Theme、视图展现的FreeMarker、JasperReports、Tiles、Velocity、
XSLT相关类。当然,如果你的应用使用了独立的MVC框架,则无需这个JAR文件里的任何类。
(13) spring-mock.jar
这个jar文件包含Spring一整套mock类来辅助应用的测试。Spring测试套件使用了其中大量mock类,这样测试就更加简单。模拟HttpServletRequest和HttpServletResponse类在Web应用单元测试是很方便的。
如何选择这些发布包,决定选用哪些发布包其实相当简单。如果你正在构建Web应用并将全程使用Spring,那么最好就使用单个全部的
spring.jar文件;如果你的应用仅仅用到简单的Inversion of Control / Dependency
Injection(IoC/DI)容器,那么只需spring-core.jar与spring-beans.jar即可;如果你对发布的大小要求很
高,那么就得精挑细选了,只取包含自己所需特性的jar文件了。采用独立的发布包你可以避免包含自己的应用不需要的全部类。当然你可以采用其它的一些工具
来设法令整个应用包变小,节省空间的重点在于准确地找出自己所需的Spring依赖类,然后合并所需的类与包就可以了。Eclispe有个插件叫
ClassPath Helper可以帮你找找所依赖的类。
Spring包依赖说明:
1) spring-core.jar需commons-collections.jar,spring-core.jar是以下其它各个的基本。
2) spring-beans.jar需spring-core.jar,cglib-nodep-2.1_3.jar
3) spring-aop.jar需spring-core.jar,spring-beans.jar,cglib-nodep-2.1_3.jar,aopalliance.jar
4) spring-context.jar需spring-core.jar,spring-beans.jar,spring-aop.jar,commons-collections.jar,aopalliance.jar
5) spring-dao.jar需spring-core.jar,spring-beans.jar,spring-aop.jar,spring-context.jar
6) spring-jdbc.jar需spring-core.jar,spring-beans.jar,spring-dao.jar
7) spring-web.jar需spring-core.jar,spring-beans.jar,spring-context.jar
8) spring-webmvc.jar需spring-core.jar,spring-beans.jar,spring-context.jar,spring-web.jar
9)
spring
-hibernate.jar需spring-core.jar,spring-beans.jar,spring-aop.jar,spring-
dao.jar,spring-jdbc.jar,spring-orm.jar,spring-web.jar,spring-webmvc.jar
10)
spring-orm.jar需spring-core.jar,spring-beans.jar,spring-aop.jar,spring-
dao.jar,spring-jdbc.jar,spring-web.jar,spring-webmvc.jar
11) spring
-remoting.jar需spring-core.jar,spring-beans.jar,spring-aop.jar,spring-
dao.jar,spring-context.jar,spring-web.jar,spring-webmvc.jar
12) spring-support.jar需spring-core.jar,spring-beans.jar,spring-aop.jar,spring-dao.jar,spring-context.jar,spring-jdbc.jar
13) spring-mock.jar需spring-core.jar,spring-beans.jar,spring-dao.jar,spring-context.jar,spring-jdbc.jar
spring2.0和spring2.5及以上版本的jar包区别
Spring 2.5的Jar打包
在Spring 2.5中, Spring Web MVC 不再是 'spring.jar'
文件的一部分. Spring MVC以'spring-webmvc.jar'
和'spring-webmvc-portlet.jar'
文件形式在发行包的 lib/modules
目录中存在。 另外,对Struts 1.x的支持被独立成 'spring-webmvc-struts.jar'
。
注意:经常被使用的的Spring的DispatcherServlet也是Spring Web MVC框架中的一部分。因此,就算你只是为了远程访问(例如,暴露Hessian或者 HTTP调用服务)而使用DispatcherServlet
,你也得将'spring-webmvc.jar'
(或者 'spring-webmvc-portlet/struts.jar'
)放到'spring.jar'
旁边去。
Spring 2.0的 'spring-jmx.jar'
和 'spring-remoting.jar'
已经被转移到 Spring 2.5的'spring-context.jar'
(针对 JMX 和非HTTP 远程支持),部分转移到 'spring-web.jar'
(针对HTTP 远程支持)。
Spring 2.0的 'spring-support.jar'
被改名为 'spring-context-support.jar'
, 更好的表达其真实含义。 'spring-portlet.jar'
被改名为 'spring-webmvc-portlet.jar'
,表明它是Spring Web MVC framework的子模块之一。 类似的, 'spring-struts.jar'
被改为'spring-webmvc-struts.jar'
。
Spring 2.0的'spring-jdo.jar'
, 'spring-jpa.jar'
, 'spring-hibernate3.jar'
, 'spring-toplink.jar'
和 'spring-ibatis.jar'
被合并到Spring 2.5大粒度的'spring-orm.jar'
中。
Spring 2.5的 'spring-test.jar'
取代了'spring-mock.jar'
,表达其对test context framework的强烈关注。 注意 'spring-test.jar'
包含了上个版本 'spring-mock.jar'
中的一切,因此如果是单元或集成测试,可以直接取代。
Spring 2.5的 'spring-tx.jar'
取代了 'spring-dao.jar'
和'spring-jca.jar'
文件,表达其对transaction framework的强烈关注。
Spring 2.5 将其jar文件直接作为OSGi兼容的bundle。这使得在OSGi环境中使用Spring 更加方便,不再需要定制打包了。
分享到:
相关推荐
### Spring2.0与Spring2.5及以上版本的jar包区别及spring jar包详解 #### 概述 Spring框架作为一款流行的Java应用开发框架,在不同的版本之间,其提供的功能、性能以及兼容性等方面都有所差异。本文将重点介绍...
《Spring2.0核心jar包详解》 Spring框架作为Java企业级应用开发的基石,自其诞生以来就深受开发者喜爱。Spring2.0版本是其发展史上的一个重要里程碑,引入了诸多新特性和改进,极大地提升了开发效率和应用的可维护...
13) spring-mock.jar需spring-core.jar,spring-beans.jar,spring-dao.jar,spring-context.jar,spring-jdbc.jarspring2.0和spring2.5及以上版本的jar包区别Spring 2.5的Jar打包 在Spring 2.5中, Spring Web MVC...
### Struts2.0 + Hibernate3 + Spring2.5 整合配置详解 #### 一、概述 在软件开发过程中,使用多种框架进行整合能够更好地实现业务逻辑与数据访问层的分离,提高代码的可维护性和扩展性。Struts2.0、Hibernate3和...
### Spring Jar 包详解 #### 一、Spring Jar 包概览 Spring 是一个开源的 Java 开发框架,主要用于简化企业级应用的开发工作。它通过提供一系列的基础框架,使得开发者能够更容易地处理复杂的业务逻辑,并且提高了...
### Spring 2.5 - 3.0 与 Hibernate 3.3 Jar 包详解 在探讨Spring 2.5到3.0以及Hibernate 3.3的Jar包之前,我们先简要回顾一下这两个框架的基本概念。 #### Spring 框架简介 Spring是一个开源的应用框架,它提供了...
Spring 框架各 jar 包详解 Spring 框架中有许多 jar 包,每个 jar 包都有其特定的作用和使用场景。了解每个 jar 包的作用和使用场景对于正确地使用 Spring 框架非常重要。本文将对 Spring 框架中常用的 jar 包进行...
springmvc,mybaitis json jar包Spring各jar包详解spring.jar 是包含有完整发布模块的单个jar 包。但是不包括mock.jar,aspects.jar, spring-portlet.jar, and spring-hibernate2.jar。 spring-src.zip就是所有的源...
2. **添加新版本依赖**:接着,添加 Spring 2.0 的相关 jar 包,包括 `spring.jar`、`aspectjrt.jar`、`aspectjweaver.jar` 和 `cglib-nodep-2.1.3.jar`。 3. **更新配置文件**:最后,在 Spring 的配置文件中添加...
在本篇文章中,我们将聚焦于Spring 4.3.1版本,探讨其核心组件及功能,并通过其包含的jar包来深入理解Spring框架的架构。 首先,我们看到的"spring-4.3.1.jar"是Spring框架的核心库,包含了Spring的主要功能。这个...
《Eclipse for Spring 2.0 新特性详解》 Eclipse for Spring 2.0 是一个专门为Spring框架提供集成开发环境(IDE)的扩展,它极大地提升了开发人员在使用Spring框架时的效率和便利性。这个版本带来了诸多新功能和...
在`spring3.x jar详解及依赖关系.doc`文档中,详细列出了Spring 3.1.2各模块之间的依赖关系和使用场景,这对于构建项目配置文件(如Maven或Gradle的pom.xml或build.gradle)非常有用。确保正确地管理这些依赖,可以...
这是一个包含Spring框架完整发布模块的单一jar包,但不包括mock.jar、aspects.jar、spring-portlet.jar和spring-hibernate2.jar。对于那些需要完整功能的项目,可以考虑使用此jar包。 2. **spring-core.jar**: ...
spring.jar是包含有完整发布的单个jar包,spring.jar中包含除了 spring-mock.jar里所包含的内容外其它所有jar包的内容,因为只有在开发环境下才会用到spring-mock.jar来进行辅助测试,正式应用系统中是用不得这些类...
### Struts2.0+Spring2.0+Hibernate3.1 整合知识点详解 ...通过以上步骤,可以实现Struts2.0和Spring2.0的无缝集成,为后续的业务逻辑处理打下了坚实的基础。下一节将继续介绍Hibernate3.1的配置与整合。
### Spring的JAR包下载地址详解 #### 一、Spring框架简介 Spring框架是一个开源的Java平台,由Rod Johnson创建并由Pivotal Software维护。它最初被设计为解决企业级应用开发中的常见问题,随着时间的发展,Spring...
### Spring 4.3.14.RELEASE 版本整合包知识点详解 #### 一、Spring框架概述 Spring 框架是由 Rod Johnson 创建的一款开源框架,它最初是为了简化企业级应用开发而设计的。Spring 提供了一种简单的方式来解决企业级...