文档章节

springMVC各个包下的作用

图腾源自自我
 图腾源自自我
发布于 2016/09/18 11:35
字数 1228
阅读 54
收藏 4

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 

© 著作权归作者所有

图腾源自自我
粉丝 0
博文 2
码字总数 1273
作品 0
济南
私信 提问
Spring Boot,Spring cloud加起来有385个包,学习成本太大了

相比以前的spring,核心包才十来个 虽然入门难 但是慢慢的用下来 还是积累了好多知识。 现在spring出的boot光包就有165个。写第一个hello world确实很快,但是后面的学习成本太高了。想要用好...

湖水没了
2016/11/30
4K
10
[java]spring三大核心组件

Bean组件 组件作用 Bean组件在Spring中的Beans包下,为了解决三件事。Bean的创建,Bean的定义,Bean的解析。最关心的就是Bean的创建。 Bean的创建 1、工厂模式的实现,顶层接口是:BeanFacto...

菜鸟腾飞
2018/11/18
0
0
[Maven实战](9)传递性依赖

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/SunnyYoona/article/details/50612701 了解Spring的朋友都知道,创建一个Spring Framework项目都需要依赖什么...

sjf0115
2016/01/30
0
0
idea快速搭建spring cloud-注册中心与注册

spring cloud快速搭建  Spring Cloud是一个微服务框架,它基于spring boot, Spring Cloud提供的全套的分布式系统解决方案。   首先我们使用gradle来创建: 选择JDK以及勾选Java,然后下一...

IT高飞
2018/07/18
0
0
spring3.1.1的各个jar作用

最近开始深入学习spring了解到的一些spring知识分享给大家看看。 org.springframework.aop-3.1.1.RELEASE.jar ---- ----spring 的面向切面编程,提供AOP(面向切面编程)实现, org.springfr...

dml124
2012/07/13
766
2

没有更多内容

加载失败,请刷新页面

加载更多

规则引擎

解决问题 版本迭代速度更不上业务变化,但是若多个业务同时变化,除了为每个业务设计专属配置项也不利于操作。就想服务接口单纯化,将复杂多变的业务逻辑交给规则引擎,让用户在web端或cs端自...

无极之岚
35分钟前
4
0
OSChina 周三乱弹 —— 欢迎你来做产品经理

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @巴拉迪维 :10多次劲歌金曲获奖,更多叱咤歌坛排名,黎明才应该是四大天王之首,只可惜拍的电影太少。单曲循环一个多月的歌,力荐 《无名份的...

小小编辑
今天
275
9
500行代码,教你用python写个微信飞机大战

这几天在重温微信小游戏的飞机大战,玩着玩着就在思考人生了,这飞机大战怎么就可以做的那么好,操作简单,简单上手。 帮助蹲厕族、YP族、饭圈女孩在无聊之余可以有一样东西让他们振作起来!...

上海小胖
今天
10
0
关于AsyncTask的onPostExcute方法是否会在Activity重建过程中调用的问题

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/XG1057415595/article/details/86774575 假设下面一种情况...

shzwork
今天
7
0
object 类中有哪些方法?

getClass(): 获取运行时类的对象 equals():判断其他对象是否与此对象相等 hashcode():返回该对象的哈希码值 toString():返回该对象的字符串表示 clone(): 创建并返此对象的一个副本 wait...

happywe
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部