`
legend9999
  • 浏览: 31981 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Spring包结构以及各个包之间引用关系说明

阅读更多

关键字: Spring

Spring 包结构说明:
 
spring.jar

包含有完整发布的单个jar包。他包含有除spring-mock.jar之外的所有jar。原因是,spring-mock.jar只有在开发环境中才会用到,而且仅仅是作为一个辅助测试类存在。除了spring.jar,spring还包括13个独立的jar文件,他们各自包含这spring各自的组件。所以,如果你可以明确知道使用spring的哪些资源文件时,就没必要去直接引入spring.jar,但有时候spring.jar的引入也是最偷懒和最直接的方式。
 
 
spring-core.jar

这个jar包含spring框架基本的核心工具类,spring其他组件都要使用到这个包里的类。是其他组件的基本核心。
 
spring-beans.jar

这个jar是所有应用都要用到的,他包含访问配置文件,创建和管理bean以及进行Inversion of Control / Dependency Injection(IoC/DI)操作相关的所有类如果应用只需基本的IoC/DI支持,引入spring-core.jar和spring-beans.jar就已经足够了。
 
spring-aop.jar

包含一些使用AOP特性时需要用到的一些类。在使用spring 的AOP特性如Declarative Transaction Management(事务管理)就需要用到这个jar文件。
 

spring-context.jar

这个jar文件为spring提供了大量扩展。可以找到使用Spring ApplicationContext特性时所需的全部类。JNDI所需的全部类,用来跟模板引擎集成(Velocity,FreeMarker,JasperReports)的类,以及校验相关类。
 

spring-dao.jar

包含Spring DAO、Spring Transaction进行数据访问的所有类,为了使用声明性事务支持还需要在自己的应用里包含spring-aop.jar
 
 
spring-hibernate.jar

是对Hibernate支持的所有类。
 

spring-orm.jar

该jar对spring DAO特性集合进行了扩展,使其支持iBATIS、JDOOJB、TopLink,由于spring将hibernate独立成包了,因此在这里没有在支持hibernate。这个文件里大部分的类都依赖spring-dao.jar中的类。
 
 
spring-remoting.jar

这个包提供对EJB、JMS以及远程调用(RMIHessianBurlapHttp Invoker JAX-RPC)相关的类
 
 
spring-support.jar

该组件提供对Cache(ehcache)、JCA、JMX,邮件服务(Java Mail、COS Mail),计划任务Scheduling(Timer、Quartz)支持的类
 
 
spring-web.jar

如果web开发中开发,而且用到用到spring框架,那就应该引入这个包,该组件包括WebApplicationContext特性的类、struts与JSF集成类、文件上传的支持类、Filter类和大量工具辅助类。
 

spring-webmvc.jar

该组件包含Spring MVC框架相关的所有类,包含国际化、标签、Theme、视图展现的FreeMarker、JasperReports、Tiles、Velocity、XSLT相关类。如果使用了独立的MVC框架则该组件不再需要。
 

spring-mock.jar

这个文件中包含Spring一整套mock类来辅助应用的测试。spring测试套件使用了大量的mock类,这样测试就更加简单了。由于可以对HttpServletRequest和HttpServletResponse进行模拟,使得对web进行单元测试更加方便。
 
 
 
包间引用关系:
 
Spring中各个包引入之前都需要保证引入 commons-logging.jar
spring-core.jar需 commons-collections.jar,spring-core.jar 是以下其他各个组件的基础。

 
spring-beans.jar需 spring-core.jar/cglib-nodep-2.1_3.jar
spring-aop.jar需 spring-core.jar/spring-beans.jar/cglib-nodep-2.1_3.jar/aopalliance.jar
spring-context.jar 需spring-core.jar/spring-beans.jar/spring-aop.jar/commons-collections.jar/aopalliance.jar
spring-dao.jar需 spring-core.jar/spring-beans.jar/spring-aop.jar/spring-context.jar
spring-jdbc.jar需 spring-core.jar/spring-beans.jar/spring-dao.jar
spring-web.jar需 spring-core.jar/spring-beans.jar/spring-context.jar
spring-webmvc.jar需 spring-core.jar/spring-beans.jar/spring-context.jar/spring-web.jar
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
spring-orm.jar 需 spring-core.jar/spring-beans.jar/spring-aop.jar/spring-dao.jar/spring-jdbc.jar/spring-web.jar/spring-webmvc.jar
spring-remoting.jar 需 spring-core.jar/spring-beans.jar/spring-aop.jar/spring-dao.jar/spring-context.jar/spring-web.jar/spring-webmvc.jar
spring-support.jar 需 spring-core.jar/spring-beans.jar/spring-aop.jar/spring-dao.jar/spring-context.jar/spring-jdbc.jar
spring-mock.jar 需 spring-core.jar/spring-beans.jar/spring-dao.jar/spring-context.jar/spring-jdbc.jar
分享到:
评论

相关推荐

    Spring包结构以及各个包之间引用关系说明.doc

    ### Spring包结构以及各个包之间引用关系说明 #### Spring包结构概述 Spring 是一款轻量级的开源框架,主要用于简化企业级应用的开发工作。它通过提供一系列的基础框架,帮助开发者构建可重用的组件,并且能够有效...

    spring整合包

    这个"spring整合包"中可能包含了上述提到的各个模块的jar包,以及Spring与其他框架如MyBatis、Hibernate、Struts等的整合所需的库。通过这些jar包,开发者可以快速搭建一个具备完整功能的Spring应用,而无需逐一下载...

    spring初学以及jar包

    如果你使用的是其他代码编辑工具,配置步骤可能会有所不同,可能需要手动调整项目结构或配置文件,确保所有依赖都被正确引用。 对于初学者来说,理解并实践Spring的初始化过程是非常重要的。这通常涉及到创建一个...

    spring和spring mvc各个版本的xsd文件还有mybatis的ddt约束文件

    在IT行业中,Spring框架是Java开发中的核心组件,它提供了丰富的功能来简化应用程序的构建,包括依赖注入、AOP(面向切面编程)以及各种模块如数据访问、Web MVC等。Spring MVC是Spring框架的一部分,专门用于构建...

    Struts2.1+Spring2.5+Hibernate3的jar包

    SSH框架的jar包包括各个框架的核心库、依赖的第三方库以及可能的工具类库。这些jar包通常会包含如以下部分: 1. Struts2的核心库:struts2-core.jar、struts2-convention-plugin.jar等。 2. Spring的核心库:spring-...

    Spring基础包的dtd(aop,jdbc,jee,jms,lang,mvc,oxm)等

    本篇文章将深入探讨Spring基础包中的各个DTD文件,包括aop、jdbc、jee、jms、lang、mvc、oxm以及task和tx等模块。 首先,`aop.dtd`是Spring的面向切面编程(AOP)模块的DTD文件。它定义了如何在XML配置中声明切面、...

    spring4.0 schema

    Spring 4.0 Schema是Spring框架的一个重要组成部分,它定义了Spring配置文件的结构和语义,使得开发者可以通过XML配置来声明式地管理应用程序的组件和依赖关系。在这个压缩包中,包含了多个子目录,每个目录对应...

    SpringDataJpa整合FreeMarker源码样例

    6. **创建FreeMarker模板**:在`src/main/resources/templates`目录下,编写FreeMarker模板文件,使用${}表达式来引用Java对象的属性,以及控制结构和函数。 **源码样例分析:** 在`demo`项目中,我们可以看到以下...

    spring-framework-3.2.0.7z

    通过这些schema,开发者可以清晰地看到可用的标签、属性以及它们之间的关系,从而更方便地管理Spring应用的配置。 Spring Framework 3.2.0引入了许多新特性,例如改进的类型安全依赖注入、对Java 7和8的支持、更好...

    spring+springmvc+mybatis(CURD)

    这通常涉及到复杂的关联查询、事务管理以及实体之间的关系映射。例如,可能需要使用MyBatis的动态SQL来实现联表查询,同时利用Spring的事务管理特性确保数据的一致性。 在SMMDemo这个项目文件中,我们可以预期包含...

    Spring 最全约束配置文件

    它定义了Spring容器中的各种Bean及其之间的关系。Spring支持多种类型的配置方式,其中XML配置文件是最常见的一种形式。本文将详细介绍一个典型的Spring XML配置文件所包含的关键元素。 #### 三、配置文件结构分析 ...

    基于javaConfig的springDataJpa+dubbo+springMvc搭建

    1. **初始化项目结构**:创建Maven或Gradle项目,设置好必要的依赖库,如Spring Boot、Spring Data Jpa、Dubbo、Spring Mvc等。 2. **配置JavaConfig**:创建配置类,为Spring Data Jpa定义数据源,配置实体扫描...

    spring-framework-5.0.2.RELEASE-docs.zip

    Spring 框架是Java开发中的一个核心框架,它为构建可维护的、模块化的、松耦合的Java应用程序提供了一种结构化的方法。Spring 5.0.2.RELEASE是该框架的一个重要版本,提供了许多增强的功能和优化。在这个版本的文档...

    spring-cloud-gateway-example-master.zip

    在微服务架构中,API网关扮演着至关重要的角色,它作为客户端与各个微服务之间的桥梁,承担了路由转发、鉴权、限流、熔断等多种职责。Spring Cloud Gateway是Spring Cloud生态体系中的一个关键组件,专为微服务架构...

    spring-boot 参考书

    6. **代码结构**:建议如何组织代码结构,包括使用默认包的情况以及寻找主应用类的位置。 7. **配置类**:解释了如何导入额外的配置类以及导入 XML 配置的方法。 8. **自动配置**:Spring Boot 的核心特性之一是...

    Spring Boot中使用LDAP来统一管理用户信息的示例

    相当于关系数据库中的字段(Field)由字段名和数据类型组成,只是为了方便检索的需要,LDAP 中的 Type 可以有多个 Value,而不是关系数据库中为了降低数据的冗余性要求实现的各个域必须是不相关的。 LDAP 中的类型...

    config-spring

    在"config-spring"中,XML配置文件是传统的配置方式,它通常以`applicationContext.xml`为名,包含bean定义,属性值,以及bean之间的依赖关系。 XML配置文件的结构主要包括: 1. `<beans>`:根元素,包含所有bean...

    Struts_Spring_Ibatis

    5. **测试与优化**:编写测试用例验证各个层之间的交互,优化性能,如缓存配置、事务隔离级别调整等。 这个 "Struts_Spring_Ibatis" 可能会涉及以下知识点: - MVC 设计模式的理解和应用 - Struts 的核心概念,如 ...

Global site tag (gtag.js) - Google Analytics