`
dsxwjhf
  • 浏览: 70746 次
  • 性别: Icon_minigender_1
  • 来自: 安徽
社区版块
存档分类
最新评论

【转】 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
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 springmvc mybatis 整合jar包

    spring springmvc mybatis的整合jar包,以及mysql,Junit,fastJson等的jar包,导入这些jar包 搭一个SSM的环境,可以使用SSM框架做一个简单的能够实现增删改查的小项目,具体的jar包及其版本如下 : aopalliance-1.0....

    SSH2 整合所有jar包 及其jar包作用注释

    完整一套SSH2 jar包 hibernate spring struts2

    spring-osgi.jar及其依赖包

    spring-osgi.jar及其依赖包

    springmvc 所支持的jar包及其源码

    3) spring-aop-3.2.8.RELEASE.jar 4) spring-beans-3.2.8.RELEASE.jar 5) spring-context-3.2.8.RELEASE.jar 6) spring-core-3.2.8.RELEASE.jar 7) spring-expression-3.2.8.RELEASE.jar 8) spring-web-3.2.8....

    SSH各个jar包的作用

    Struts Hibernate Spring 三大框架各个jar包的具体作用,方便你的整合SSH!

    spring4.1及其依赖jar+mybatis

    spring4.1jar包+依赖包+mybatis

    spring2.5.5+JDK1.8 版本报错的解决办法(修改后jar)

    org.springframework.core.JdkVersion 于是找到一个spring-core-3.x.RELEASE.jar,用其中的JdkVersion这个类替换spring-2.5.5.jar对应class,问题解决! 注意:别用spring-core-4.x.RELEASE.jar,JdkVersion....

    springMVC的jar包.rar

    完整的springMVC开发项目所需的jar包及其相关jar包,spring版本4.0.15

    c3p0jar包及配置文件(可用)

    内容概要:c3p0连接池需要jar包.rar以及相关配置文件 C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。目前使用它的开源项目有Hibernate、Spring等。 适合人群:正在学习...

    SSH项目整合示例【OpenSessionInView】所用到的jar包

    SSH项目整合示例【OpenSessionInView】所用到的jar包 包含Struts + Hibernate + Spring所有jar及其依赖的jar

    cglib及其依赖包

    cglib实现动态代理所依赖的jar包 在学习spring中会用到

    spring-security-4.2.4(全)资源包

    截止2018/02/24为止,官方发布的最新正式版资源包,支持jdk8,需要的可以下载一下,jdk7及其以下用户建议使用spring-security-3.2.1目前最新的正式版,可以移步搜索下载

    settings.xml

    包含常用的远程仓库: 1、阿里云的远程仓库 2、mvnrepository镜像,常用的maven中央仓库jar查询站点,可直接当maven镜像使用 ...9、spring的milestone镜像,存放着spring项目及其子项目的里程碑版本jar包

    spring MVC + mybatis + maven仿新版百度首页 带oracle登录功能

    采用spring MVC框架,结合mybatis连接oracle数据,利用maven进行jar包的下载。前端页面量模仿的是2016年3月7日女生节的百度页面,CSS部分采用百度页面源码直接复制过来的,对于js部分,用网上别人写的模态框代码,...

    knife4j-spring-ui-2.0.8.jar

    因为原先swagger-bootstrap-ui选用的是后端开发Java编码 前端开发Ui混和装包的方法,在微服务架构下显的很松垮,因而新项目宣布改名为knife4j改名后关键潜心的层面前后左右端Java编码及其前端开发Ui控制模块开展分离...

    spring security 参考手册中文版

    远程处理 - spring-security-remoting.jar 25 Web - spring-security-web.jar 25 配置 - spring-security-config.jar 26 LDAP - spring-security-ldap.jar 26 ACL - spring-security-acl.jar 26 CAS - spring-...

    SpringMVC.jar

    SpingMVC的jar包,SpringMVC是一款及其优秀的后台框架,SpringMVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC...

    mybatis、springmvc及ssm整合包框架所需依赖

    mybatis、mybatis缓存包、spring、springmvc框架包及其最新jar下载地址下载地址

    spring-framework-5.0.7:这是基于5.0.7版本的Spring框架的源码分析

    Spring框架 这是Spring框架的所在地,它是所有的基础。 Spring框架和Spring项目系列共同构成了我们所谓的“ ...在Twitter上关注@SpringCentral , @SpringFramework及其团队成员。 可以在The Spring Blog上找到深入

    knife4j-aggregation-spring-boot-starter-2.0.8.jar

    因为原先swagger-bootstrap-ui选用的是后端开发Java编码 前端开发Ui混和装包的方法,在微服务架构下显的很松垮,因而新项目宣布改名为knife4j改名后关键潜心的层面前后左右端Java编码及其前端开发Ui控制模块开展分离...

Global site tag (gtag.js) - Google Analytics