Spring Jar包详解
- 格式:doc
- 大小:41.00 KB
- 文档页数:7
Spring环境搭建之:导入jar包、配置文件名称及放置位置现在项目开发中Spring框架应用的还是比较多的,自己用的还不太熟练,每次用的时候总配置半天,总有些配置弄错,就找个时间总结以下,方便以后再搭建环境的时候直接拿来用。
以Spring4为例,这里就不提供Spring的下载地址了,官网上很容易下的到。
1、导入相关jar包建好web项目以后,导入Spring自己的jar包spring-beans-4.0.0.M2.jarspring-context-4.0.0.M2.jarspring-core-4.0.0.M2.jarspring-expression-4.0.0.M2.jarspring-jdbc-4.0.0.M2.jarspring-tx-4.0.0.M2.jarspring-web-4.0.0.M2.jarspring-webmvc-4.0.0.M2.jar导入Spring所依赖的jar包commons-logging-1.1.1.jar导入文件上传下载组件的jar包commons-fileupload-1.3.jarcommons-io-2.4.jar导入数据源jar包,这里用的是apache的dbcpcommons-dbcp-1.4.jarcommons-pool-1.6.jarSpring MVC中使用JstlView时需要添加的包jstl-1.1.2.jarstandard-1.1.2.jar数据库驱动包,这里用的是mysqlmysql-connector-java-5.1.7-bin.jar……其他项目所需的jar包,导入jar包可以先自己尝试,在项目的相关配置完成以后,尝试部署启动web服务器,根据服务器启动过程中的提示添加缺少的jar包就行,直到服务器正常启动。
2、配置文件的名称及放置位置2.1默认名称及位置Spring框架默认会加载classpath(类路径)下的applicationContext.xml文件,即项目的代码根目录src/applicationContext.xml,项目部署后在服务器上的存储目录就是WEB-INF/classes/applicationContext.xml2.2自定义名称及位置当然我们可以更改配置文件的名称,也可以更改文件的放置位置不过这样就需要在web.xml文件中配置相关信息,来告诉Spring 框架去哪里加载配置文件。
springframework体系结构及模块jar依赖关系详解本⽂对于Spring的JAR包使⽤和配置,结合⽹友材料以spring 4.3.6.RELEASE版本为例,介绍spring框架结构和各模块对应JAR包以及模块间JAR依赖关系。
注:不同版本JAR包依赖会有所区别spring官⽹给出了⼀张spring4的结构图图中可以简单认为将spring分为5个部分:core、aop、data access、web、test,图中每个圆⾓矩形都对应相应jar包,如果在maven中配置,所有这些jar的“groupId”都是“org.springframework”,每个jar有⼀个不同的“artifactId”,官⽅给出总共20个JAR包题外话,对于JAR包的下载,除官⽅给出的通过maven和gradle依赖⾃动下载外,还可以通过以下地址直接下载全量ZIP包,但对于spring JAR包依赖的jar包需要⾃⼰额外下载下⾯介绍这5个部分的jar以及依赖关系core部分包含4个模块1、spring-core:依赖注⼊IoC与DI的最基本实现,对应spring-core-4.3.6.RELEASE.jar2、spring-beans:Bean⼯⼚与bean的装配,对应spring-beans-4.3.6.RELEASE.jar3、spring-context:spring的context上下⽂即IoC容器,包含⼆个JAR包,对应spring-context-4.3.6.RELEASE.jar和spring-context-support-4.3.6.RELEASE.jar,其中support是spring额外⽀持包,⽐如邮件服务、视图解析等4、spring-expression:spring表达式语⾔,对应spring-expression-4.3.6.RELEASE.jar它们的完整依赖关系因为spring-core依赖了commons-logging,⽽其他模块都依赖了spring-core,所以整个spring框架都依赖了commons-logging,如果有⾃⼰的⽇志实现如log4j,可以排除对commons-logging的依赖,没有⽇志实现⽽排除了commons-logging依赖,编译报错aop部分包含4个模块1、spring-aop:⾯向切⾯编程,对应spring-aop-4.3.6.RELEASE.jar2、spring-aspects:集成AspectJ,对应spring-aspects-4.3.6.RELEASE.jar3、spring-instrument:提供⼀些类级的⼯具⽀持和ClassLoader级的实现,⽤于服务器,对应spring-instrument-4.3.6.RELEASE.jar,同时提供针对tomcat的instrument实现jar包spring-instrument-tomcat-4.3.6.RELEASE.jar4、spring-messaging:⽤于构建基于消息的应⽤程序spring-messaging-4.3.6.RELEASE.jar它们的依赖关系data access部分包含5个模块1、spring-jdbc:jdbc的⽀持,对应spring-jdbc-4.3.6.RELEASE.jar2、spring-tx:事务控制,对应 spring-tx-4.3.6.RELEASE.jar3、spring-orm:对象关系映射,集成orm框架,对应spring-orm-4.3.6.RELEASE.jar4、spring-oxm:对象xml映射,对应 spring-oxm-4.3.6.RELEASE.jar5、spring-jms:java消息服务,对应spring-jms-4.3.6.RELEASE.jar它们的依赖关系web部分包含4个模块1、spring-web:基础web功能,如⽂件上传,spring-web-4.3.6.RELEASE.jar2、spring-webmvc:mvc实现,对应spring-webmvc-4.3.6.RELEASE.jar3、spring-webmvc-portlet:基于portlet的mvc实现,对应spring-webmvc-portlet-4.3.6.RELEASE.jar4、spring-websocket:为web应⽤提供的⾼效通信⼯具,对应spring-websocket-4.3.6.RELEASE.jar它们的依赖关系t est部分只有⼀个模块,1、spring-test:spring测试,提供junit与mock测试功能,对应spring-test-4.3.6.RELEASE.jar它们的依赖关系到这⾥,spring4的结构、JAR包以及依赖关系介绍就完了,看完这些图相信对整个Spring结构以及所需JAR包都有清晰了解,同时对于在maven中配置spring依赖时也不会再混乱了。
Springboot中如何引⼊本地jar包,并通过maven把项⽬成功打包成jar包部署这个jar包不在maven仓库⾥⾯,如果我们要引⼊这个下载的jar包。
有两种⽅法可以试试:1. 本地直接引⼊,打包到依赖⽂件中。
2. 打包上传到maven本地仓库中,然后pom⽂件正常引⼊。
直接本地引⼊1. 在resource⽂件夹下⾯新建lib⽂件夹,需要的数据库jar包放到这⾥2. 在pom⽂件中引⼊刚刚添加的⽂件。
<dependency><groupId>cn.sgclub.utils</groupId><artifactId>common-utils</artifactId><version>1.0.0</version><scope>system</scope><systemPath>${project.basedir}/src/main/resources/lib/mon-utils-1.0.0.jar</systemPath></dependency>groupId和artifactId可以⾃定义,建议和所要引⼊的jar包不要有太⼤的出⼊,version填写引⼊jar包的版本号即可。
systemPath这个路径填写jar包的所在路径。
scope 需要填写system,这个不可省略,否则可能会报错。
${project.basedir}是⼀个系统常量,代表当前项⽬的根⽬录。
3. 项⽬打包时引⼊本地jar包,需要在打包插件中引⼊<includeSystemScope>,具体的如下所⽰。
<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><includeSystemScope>true</includeSystemScope></configuration></plugin></plugins></build>上传jar包到maven仓库我们还可以使⽤相关的maven命令,把相关的jar包上传到maven仓库,然后就可以在项⽬中直接引⽤了。
SpringBoot的jar包如何启动的实现⽬录⼀、简介⼆、jar包的内部结构三、加载过程1.使⽤到的⼀些类2.过程分析四、总结⼀、简介使⽤过SprongBoot打过jar包的都应该知道,⽬标⽂件⼀般都会⽣成两个⽂件,⼀个是以.jar的包,⼀个是.jar.original⽂件。
那么使⽤SpringBoot会打出两个包,⽽.jar.original的作⽤是什么呢?还有就是java -jar是如何将⼀个SpringBoot项⽬启动,之间都进⾏了那些的操作?其实.jar.original是maven在SpringBoot重新打包之前的原始jar包,内部只包含了项⽬的⽤户类,不包含其他的依赖jar包,⽣成之后,SpringBoot重新打包之后,最后⽣成.jar包,内部包含了原始jar包以及其他的引⽤依赖。
以下提及的jar包都是SpringBoot⼆次加⼯打的包。
⼆、jar包的内部结构SpringBoot打出的jar包,可以直接通过解压的⽅式查看内部的构造。
⼀般情况下有三个⽬录。
BOOT-INF:这个⽂件夹下有两个⽂件夹classes⽤来存放⽤户类,也就是原始jar.original⾥的类;还有⼀个是lib,就是这个原始jar.original引⽤的依赖。
META-INF:这⾥是通过java -jar启动的⼊⼝信息,记录了⼊⼝类的位置等信息。
org:Springboot loader的代码,通过它来启动。
这⾥主要介绍⼀下/BOOT-INF/MANIFEST.MF⽂件Main-Class: org.springframework.boot.loader.JarLauncherStart-Class: .springboot.center.AuthEenterBootstrapMain-Class:记录了java -jar的启动⼊⼝,当使⽤该命令启动时就会调⽤这个⼊⼝类的main⽅法,显然可以看出,Springboot转移了启动的⼊⼝,不是⽤户编写的xxx.xxx.BootStrap的那个⼊⼝类。
Spring各个jar包作用Spring AOP:Spring的面向切面编程,提供AOP(面向切面编程)的实现Spring Aspects:Spring提供的对AspectJ框架的整合Spring Beans:Spring IOC的基础实现,包含访问配置文件、创建和管理bean等。
Spring Context:在基础IOC功能上提供扩展服务,此外还提供许多企业级服务的支持,有邮件服务、任务调度、JNDI定位,EJB集成、远程访问、缓存以及多种视图层框架的支持。
Spring Context Support:Spring context的扩展支持,用于MVC方面。
Spring Core:Spring的核心工具包Spring expression:Spring表达式语言Spring Framework Bom:Spring Instrument:Spring对服务器的代理接口Spring Instrument Tomcat:Spring对tomcat连接池的集成Spring JDBC:对JDBC 的简单封装Spring JMS:为简化jms api的使用而做的简单封装Spring Messaging:Spring orm:整合第三方的orm实现,如hibernate,ibatis,jdo以及spring 的jpa 实现Spring oxm:Spring对于object/xml映射的支持,可以让JAVA与XML之间来回切换Spring test:对JUNIT等测试框架的简单封装Spring tx:为JDBC、Hibernate、JDO、JPA等提供的一致的声明式和编程式事务管理。
Spring web:包含Web应用开发时,用到Spring框架时所需的核心类,包括自动载入WebApplicationContext特性的类、Struts与JSF集成类、文件上传的支持类、Filter类和大量工具辅助类。
Spring webmvc:包含SpringMVC框架相关的所有类。
Eclipse 插件之 Spring IDE本文介绍怎么利用Eclipse插件Spring IDE在Eclipse中的使用。
Eclipse 是目前非常流行的研发平台,开放扩展的架构让非常多程式员找到了自己个性化的工作环境。
问题提出:在采用Spring框架进行系统研发时,Bean的设置文件XML的书写、XML文件的内容校验及Bean 之间的依赖关系查看等工作,如果能够采用合适的工具来完成,会成倍提高研发效率。
解决方法:Spring IDE 是 Spring 官方网站推荐的 Eclipse 插件,可提供在研发 Spring 时对 Bean 定义文件进行验证并以可视化的方式查看各个Bean之间的依赖关系等。
同时,建议结合Eclipse XMLBuddy插件进行XML文件编辑和校验,是个不错的选择。
安装说明JDK:1.5.0从上去下载安装Eclipse:3.1.2从上去下载解压Spring 1.2.8从上去下载解压Spring IDE 1.3.2从上去下载XMLBuddy 2.0.72从/上去下载Spring IDE 1.3.2 Update 地址为:/updatesite/管理技巧提示:新下载的插件PlugIn一定不要都放在原始的Eclipse目录下去,一大堆,累死你:(1. 前提是你已下载解压并设置好Eclipse工具,比如解压在E:\OpenSource\Eclipse\目录下,以下这个目录以%ECLIPSE_HOME%来进行表示;2. 此时默认的插件是在%ECLIPSE_HOME%\plugins目录中的;3. 在%ECLIPSE_HOME%下建立一个PlugInsNew的目录;比如:E:\OpenSource\Eclipse\PlugInsNew4. 如果你下载了一个新的插件,比如叫做:XYZ那么就在%ECLIPSE_HOME%\PlugInsNew\目录下建立XYZ目录,目录里面是eclipse目录,eclipse 目录包含有features和plugins两个子目录;结构如下图所示:5. 把下载的新插件的文件放在以下相应目录中;%ECLIPSE_HOME%\PlugInsNew\XYZ\eclipse\features%ECLIPSE_HOME%\PlugInsNew\ XYZ\eclipse\plugins6. 建立相关的.link的文件;然后在%ECLIPSE_HOME%\links目录里建立一个XYZ.link的文件内容如是:path=E:/OpenSource/Eclipse/PlugInsNew/XYZ就一行这样的路径指示而已。
SpringBoot引⼊第三⽅jar包或本地jar包的处理⽅式在开发过程中有时会⽤到maven仓库⾥没有的jar包或者本地的jar包,这时没办法通过pom直接引⼊,那么该怎么解决呢⼀般有两种⽅法第⼀种是将本地jar包安装在本地maven库第⼆种是将本地jar包放⼊项⽬⽬录中这篇⽂章主要讲第⼆种⽅式,这⼜分两种情况,⼀种是打包jar包,第⼆种是打包war包jar包先看看jar包的结构⽤压缩⼯具打开⼀个jar包打包后jar包的路径在BOOT-INF\lib⽬录下在项⽬⽬录中创建个⽂件夹⽤来存放jar包pom⽂件中加⼊如下内容<dependency><groupId>com.ckfinder</groupId><artifactId>json-lib</artifactId><version>2.3</version><scope>system</scope><systemPath>${project.basedir}/src/main/resources/jar/json-lib-2.3-jdk15.jar</systemPath></dependency>groupId,artifactId,version可随便写这时候在项⽬中运⾏是没问题了,但是使⽤命令mvn clean package打包之后BOOT-INF\lib⾥⾯并没有json-lib-2.3-jdk15.jar包,还需要pom⽂件中做如下配置:<plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><includeSystemScope>true</includeSystemScope></configuration></plugin>之后再使⽤mvn clean package打包就OK了war包war包的⽬录如下:jar包在WEB-INF/lib⽬录下使⽤mvn clean package命令打包时需要在pom⽂件加⼊以下内容<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-war-plugin</artifactId><version>2.4</version><configuration><webResources><resource><directory>src/main/resources/jar/</directory><targetPath>WEB-INF/lib/</targetPath><includes><include>**/*.jar</include></includes></resource></webResources></configuration></plugin>。
下载的spring包中文件及各种包众多,在项目中往往只有部分是我们必须的,如果不清楚什么时候需要什么包的话,看看下面就知道了。
aspectj目录下是在Spring框架下使用aspectj的源代码和测试程序文件。
Aspectj是java 最早的提供AOP的应用框架。
dist 目录下是 Spring 的发布包,关于发布包下面会详细进行说明。
docs 目录下是相关的文档,包括有Spring api 的javadoc、reference 参考指南、Spring 的标签库使用文件及Spring MVC 的MVC-step-by-step 讲解与示例。
都是很好的文档,值得好好研究一下。
lib 目录下是Spring 所依赖的第三方开源包。
mock 目录下是 Spring 辅助应用测试的Mock 源程序。
samples 目录下是 Spring 的示例源程序及简单的webapp 示例框架的示例配置,值得好好学习的有jpetstore 及petclinic,当然其它的countries、imagedb、tiles-example 也可以好好参考一下。
src 目录下是Spring 的源程序。
test 目录下Spring 的单元测试源程序。
tiger 目录下是针对在Spring框架中使用java 1.5的源程序及测试程序。
Tiger是jdk 1.5版本的开发代号。
接下来详细说说dist 目录下jar 包的相关内容。
了解这些内容有助于我们减小发布包的大小,同时也可以增加对Spring架构的了解。
spring.jar 是包含有完整发布模块的单个jar 包。
但是不包括mock.jar, aspects.jar, spring-portlet.jar, and spring-hibernate2.jar。
spring-src.zip就是所有的源代码压缩包。
除了spring.jar 文件,Spring 还包括有其它21 个独立的jar 包,各自包含着对应的Spring 组件,用户可以根据自己的需要来选择组合自己的jar 包,而不必引入整个spring.jar 的所有类文件。
SpringBoot学习系列-jar包启动原理打包⽣成两个jar包ssmdemo-plus.jar 引⼊了相关第三⽅依赖。
ssmdemo-plus.jar.original 仅包含应⽤编译后的本地资源jar包的⽬录结构|—— BOOT-INF|—— classes 存放的是应⽤编译后的class⽂件|—— lib 存放的是应⽤依赖的第三⽅jar包⽂件|——META-INF 存放应⽤打包信息maven坐标、pom⽂件和MANIFEST.MF|—— MANIFEST.MF|—— maven|—— org ⽬录存放SpringBoot相关class⽂件|—— springframework使⽤java -jar命令执⾏ spring Boot 应⽤的可执⾏jar⽂件会读取META-INF/MANIFEST.MF⽂件的Main-Class属性值,该值表⽰应⽤程序执⾏⼊⼝类MANIFEST.MF⽂件内容Manifest-Version: 1.0Archiver-Version: Plexus ArchiverBuilt-By: NB-20200504-3Start-Class: com.zwh.ApplicationSpring-Boot-Classes: BOOT-INF/classes/Spring-Boot-Lib: BOOT-INF/lib/Spring-Boot-Version: 2.2.3.RELEASECreated-By: Apache Maven 3.6.1Build-Jdk: 1.8.0_231Main-Class: org.springframework.boot.loader.JarLauncher会执⾏org.springframework.boot.loader包下的JarLauncher的main⽅法这⾥会做操作JarLauncher.javapublic static void main(String[] args) throws Exception {(new JarLauncher()).launch(args);}Launcher.javaprotected void launch(String[] args) throws Exception {JarFile.registerUrlProtocolHandler();ClassLoader classLoader = this.createClassLoader(this.getClassPathArchives());unch(args, this.getMainClass(), classLoader);}JarFile.registerUrlProtocolHandler();这个⽅法作⽤:利⽤java url协议实现扩展原理,⾃定义jar协议将org.springframework.boot.loader包追加到java系统属性java.protocol.handler.pkgs中,实现⾃定义jar协议参考链接:java ⾃定义通讯协议 [https:///d_x_program/article/details/75038200]java会在java.protocol.handler.pkgs系统属性指定的包中查找与协议同名的⼦包和名为Handler的类,即负责处理当前协议的URLStreamHandler实现类必须在 <包名>.<协议名定义的包> 中,并且类名称必须为Handler例如:org.springframework.boot.loader.jar.Handler这个类将⽤于处理jar协议这个jar协议实现作⽤:参考链接:SpringBoot FatJar启动原理 [https:///jfire/p/11973093.html]springBoot在打包时候会将第三⽅依赖jar包打进最终的Jar,变成⼀个可运⾏的FatJar。
spring.j ar是包含有完整发布的单个jar包,spring.j ar中包含除了 spring-moc k.j ar里所包含的内容外其它所有j ar包的内容,因为只有在开发环境下才会用到spring-moc k.j ar来进行辅助测试,正式应用系统中是用不得这些类的。
除了spring.jar文件,Spring还包括有其它13个独立的j ar包,各自包含着对应的Spring组件,用户可以根据自己的需要来选择组合自己的jar包,而不必引入整个spring.j ar的所有类文件。
(1) spring-c or e.j ar这个jar文件包含Spring框架基本的核心工具类,Spring其它组件要都要使用到这个包里的类,是其它组件的基本核心,当然你也可以在自己的应用系统中使用这些工具类。
(2) spring-beans.j ar这个jar文件是所有应用都要用到的,它包含访问配置文件、创建和管理bean以及进行Inver sion of Contr ol / Dependency Inj ection(IoC/DI)操作相关的所有类。
如果应用只需基本的IoC/DI支持,引入spring-c or e.jar及spring- beans.jar文件就可以了。
(3) spring-aop.jar这个jar文件包含在应用中使用Spring的AOP特性时所需的类。
使用基于AOP的Spring特性,如声明型事务管理(Declar ative Tr ansaction Management),也要在应用里包含这个jar包。
(4) spring-c ontext.j ar这个jar文件为Spring核心提供了大量扩展。
可以找到使用Spring Applic ationContext特性时所需的全部类,JDNI所需的全部类,UI方面的用来与模板(Templating)引擎如Velocity、Fr eeMarker、Jasper Reports集成的类,以及校验Validation方面的相关类。
(5) spring-dao.jar这个jar文件包含Spring DAO、Spring Tr ansaction进行数据访问的所有类。
为了使用声明型事务支持,还需在自己的应用里包含spring-aop.jar。
(6) spring-hiber nate.j ar这个jar文件包含Spring对Hibernate 2及Hibernate 3进行封装的所有类。
(7) spring-j dbc.jar这个jar文件包含对Spring对JDBC数据访问进行封装的所有类。
(8) spring-or m.jar这个jar文件包含Spring对DAO特性集进行了扩展,使其支持 iBATIS、JDO、OJB、TopLink,因为Hibernate已经独立成包了,现在不包含在这个包里了。
这个jar文件里大部分的类都要依赖spring-dao.j ar里的类,用这个包时你需要同时包含spring-dao.j ar包。
(9) spring-r emoting.jar这个jar文件包含支持EJB、JMS、远程调用Remoting(RMI、Hessian、Burlap、Http Invoker、JAX-RPC)方面的类。
(10) spring-support.j ar这个jar文件包含支持缓存Cache(ehc ac he)、JCA、JMX、邮件服务(Java Mail、COS Mail)、任务计划Sc heduling (Timer、Quartz)方面的类。
(11) spring-web.j ar这个jar文件包含Web应用开发时,用到Spring框架时所需的核心类,包括自动载入WebApplic ationContext特性的类、Struts与JSF集成类、文件上传的支持类、Filter类和大量工具辅助类。
(12) spring-webm vc.j ar这个jar文件包含Spring MVC框架相关的所有类。
包含国际化、标签、Theme、视图展现的Fr eeMar ker、Jasper Reports、Tiles、Velocity、XSLT相关类。
当然,如果你的应用使用了独立的MVC框架,则无需这个JAR文件里的任何类。
(13) spring-moc k.jar这个jar文件包含Spring一整套moc k类来辅助应用的测试。
Spring测试套件使用了其中大量moc k类,这样测试就更加简单。
模拟HttpServletRequest和HttpServletResponse类在Web应用单元测试是很方便的。
如何选择这些发布包,决定选用哪些发布包其实相当简单。
如果你正在构建Web应用并将全程使用Spring,那么最好就使用单个全部的spring.j ar文件;如果你的应用仅仅用到简单的Inver sion of Contr ol / Dependency Inj ection(IoC/DI)容器,那么只需spring-cor e.jar与spring-beans.jar即可;如果你对发布的大小要求很高,那么就得精挑细选了,只取包含自己所需特性的jar文件了。
采用独立的发布包你可以避免包含自己的应用不需要的全部类。
当然你可以采用其它的一些工具来设法令整个应用包变小,节省空间的重点在于准确地找出自己所需的Spring依赖类,然后合并所需的类与包就可以了。
Eclispe 有个插件叫ClassPath Helper可以帮你找找所依赖的类。
Spring包依赖说明:1) spring-c ore.jar需c ommons-c ollections.j ar,spring-c or e.jar是以下其它各个的基本。
2) spring-beans.jar需spring-c or e.j ar,cglib-nodep-2.1_3.jar3) spring-aop.j ar需spring-cor e.jar,spring-beans.jar,c glib-nodep-2.1_3.j ar,aopallianc e.jar4) spring-c ontext.j ar需spring-cor e.jar,spring-beans.jar,spring-aop.jar,c ommons-c ollections.j ar,aopallianc e.j ar5) spring-dao.j ar需spring-cor e.jar,spring-beans.jar,spring-aop.jar,spring-c ontext.j ar6) spring-jdbc.j ar需spring-c ore.jar,spring-beans.j ar,spring-dao.jar7) spring-web.j ar需spring-cor e.jar,spring-beans.jar,spring-context.jar8) spring-webm vc.j ar需spring-c ore.jar/spring-beans.j ar/spring-context.jar/spring-web.jar9) spring -hiber nate.j ar需spring-c ore.jar,spring-beans.j ar,spring-aop.jar,spring- dao.jar,spring-j dbc.jar,spring-or m.jar,spring-web.j ar,spring-webm vc.j ar10) spring-or m.jar需spring-cor e.j ar,spring-beans.jar,spring-aop.jar,spring- dao.jar,spring-j dbc.jar,spring-web.j ar,spring-webm vc.j ar11) spring -r emoting.j ar需spring-c ore.jar,spring-beans.jar,spring-aop.j ar,spring- dao.j ar,spring-context.jar,spring-web.j ar,spring-webm vc.j ar12) spring-support.jar需spring-c or e.j ar,spring-beans.j ar,spring-aop.jar,spring-dao.j ar,spring-context.jar,spring-j dbc.jar13) spring-moc k.j ar需spring-cor e.jar,spring-beans.jar,spring-dao.jar,spring-c ontext.j ar,spring-jdbc.j arSpring相关jar包简介前半部分spring本身的包,从网上转载,因为是转了不止一次,找不到作者,但还是要向作者和转载者表示感谢。
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方面的相关类。