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.jarspring -core.jar/cglib-nodep-2.1_3.jar
spring -aop.jarspring -core.jar/ spring -beans.jar/cglib-nodep-2.1_3.jar/aopalliance.jar
spring -context.jarspring -core.jar/ spring -beans.jar/ spring -aop.jar/commons-collections.jar/aopalliance.jar
spring -dao.jarspring -core.jar/ spring -beans.jar/ spring -aop.jar/ spring -context.jar
spring -jdbc.jarspring -core.jar/ spring -beans.jar/ spring -dao.jar
spring -web.jarspring -core.jar/ spring -beans.jar/ spring -context.jar
spring -webmvc.jarspring -core.jar/ spring -beans.jar/ spring -context.jar/ spring -web.jar
spring -hibernate.jarspring -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.jarspring -core.jar/ spring -beans.jar/ spring -aop.jar/ spring -dao.jar/ spring -jdbc.jar/ spring -web.jar/ spring -webmvc.jar
spring -remoting.jarspring -core.jar/ spring -beans.jar/ spring -aop.jar/ spring -dao.jar/ spring -context.jar/ spring -web.jar/ spring -webmvc.jar
spring -support.jarspring -core.jar/ spring -beans.jar/ spring -aop.jar/ spring -dao.jar/ spring -context.jar/ spring -jdbc.jar
spring -mock.jarspring -core.jar/ spring -beans.jar/ spring -dao.jar/ spring -context.jar/ spring -jdbc.jar
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值