`

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
分享到:
评论

相关推荐

    spring jar 包详解

    ### Spring Jar 包详解 #### 一、Spring Jar 包概览 Spring 是一个开源的 Java 开发框架,主要用于简化企业级应用的开发工作。它通过提供一系列的基础框架,使得开发者能够更容易地处理复杂的业务逻辑,并且提高了...

    spring2.0和spring2.5 及以上版本的jar包区别 spring jar 包详解

    ### Spring2.0与Spring2.5及以上版本的jar包区别及spring jar包详解 #### 概述 Spring框架作为一款流行的Java应用开发框架,在不同的版本之间,其提供的功能、性能以及兼容性等方面都有所差异。本文将重点介绍...

    JDBC驱动包,Dm7JdbcDriver17.jar。

    **JDBC驱动包详解** **一、JDBC驱动概述** JDBC(Java Database Connectivity)是Java语言中用来规范客户端程序如何访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。它允许Java应用程序通过...

    maven整合

    &lt;systemPath&gt;C:/Program Files/Java/jdk1.7.0_07/lib/tools.jar&lt;/systemPath&gt; &lt;/dependency&gt; &lt;/dependencies&gt; &lt;/profile&gt; &lt;/profiles&gt; &lt;!-- 添加SSH框架相关的依赖 --&gt; &lt;dependencies&gt; &lt;dependency&gt; ...

    Spring jar 包详解

    spring.jar是包含有完整发布的单个jar包,spring.jar中包含除了 spring-mock.jar里所包含的内容外其它所有jar包的内容,因为只有在开发环境下才会用到spring-mock.jar来进行辅助测试,正式应用系统中是用不得这些类...

    spring4-hibernate4-struts2整合

    1. **引入Spring所需jar包**: - `spring-core`:提供Spring的核心功能,如BeanFactory等。 - `spring-context`:建立在core之上,提供上下文支持,如资源加载、事件传播等。 - `spring-jdbc`:提供JDBC抽象层,...

    springboot基础pdf

    &lt;artifactId&gt;spring-boot-starter-parent&lt;/artifactId&gt; &lt;version&gt;2.3.2.RELEASE&lt;/version&gt; &lt;/parent&gt; &lt;dependencies&gt; &lt;!-- 单元测试 --&gt; &lt;dependency&gt; &lt;groupId&gt;junit&lt;/groupId&gt; &lt;artifactId&gt;junit&lt;/...

    spring框架各jar包详解

    Spring 框架各 jar 包详解 Spring 框架中有许多 jar 包,每个 jar 包都有其特定的作用和使用场景。了解每个 jar 包的作用和使用场景对于正确地使用 Spring 框架非常重要。本文将对 Spring 框架中常用的 jar 包进行...

    配置Spring+quartz定时器.docx

    ### 配置Spring+Quartz定时器的知识点详解 #### 一、Quartz简介与应用场景 Quartz 是一个开源的任务调度框架,它提供了强大的任务调度功能,并且易于配置和使用。该框架支持复杂的循环调度策略,可以触发任务的...

    eureka分布式微服务

    &lt;description&gt;commonservice project for Spring Boot&lt;/description&gt; &lt;!-- 依赖 --&gt; &lt;dependencies&gt; &lt;dependency&gt; &lt;groupId&gt;org.springframework.cloud&lt;/groupId&gt; &lt;artifactId&gt;spring-cloud-starter-eureka-...

    springboot springmvc mybatis项目整合.docx

    ### Spring Boot、Spring MVC 和 MyBatis 项目整合详解 #### 一、Spring Boot 特点及优势 Spring Boot 是一款旨在简化 Spring 应用程序搭建过程的框架,其核心特性在于减少样板代码并实现自动配置。以下是 Spring ...

    spring boot入门教程

    - **Jar 包部署**:修改 `pom.xml` 文件中的 `&lt;packaging&gt;` 标签为 `jar`,使用 `mvn clean package` 命令打包项目。打包完成后,在项目的 target 目录下生成 jar 文件。 - **启动 Jar 包**:使用命令 `java -jar ...

    spring MVC配置详解

    Spring 2.5.6 需要引入的 jar 包有 spring.jar、spring-webmvc.jar、commons-logging.jar、cglib-nodep-2.1_3.jar 等。Hibernate 3.6.8 需要引入的 jar 包有 hibernate3.jar、hibernate-jpa-2.0-api-1.0.1.Final.jar...

    详解spring boot引入外部jar包的坑

    Spring Boot 引入外部 Jar 包的坑 Spring Boot 框架在实际项目开发中广泛应用,而在引入外部 Jar 包时常常会遇到一些坑,今天我们来详细介绍 Spring Boot 引入外部 Jar 包的坑。 首先,在 Spring Boot 项目中引入...

    maven搭建SSM框架

    ### Maven 搭建 SSM (Spring + SpringMVC + MyBatis) 框架详解 #### 一、MyBatis Generator 工具使用方法 1. **准备工作**: - 在MySQL中构建好所需的数据表。 - 准备必要的文件和资源: - `src`目录用于存放...

    springboot 入门学习笔记

    javaagent:${settings.localRepository}/org/springframework/boot/spring-boot-devtools/${spring-boot.devtools.version}/spring-boot-devtools-${spring-boot.devtools.version}.jar&lt;/args&gt; &lt;/configuration&gt; ...

    spring+logback中间包1.6

    《Spring与Logback整合实践详解》 在Java开发领域,日志管理是不可或缺的一部分,而Logback作为一款高效、强大的日志处理框架,被广泛应用于各种项目中。当我们结合Spring MVC进行开发时,为了实现日志记录的功能,...

    项目打包成War(Spring Boot).pdf

    ### Spring Boot 项目打包成WAR 文件详解 #### 一、背景介绍 在传统的Java Web开发中,项目通常被打包成WAR文件(Web Application Archive),这种格式的文件包含了Web应用程序的所有资源,包括HTML、CSS、...

Global site tag (gtag.js) - Google Analytics