- 1、本文档共33页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工作范文]spring教程
内部资料不得拷贝
Spring
Spring框架介绍
配置S应用
开发第一个S应用
AURISOFT
Spring 启程
什么是Spring?它是干什么用的?
Spring也是一个框架和Struts一样,都是轻量级的J2EE应用程式框架。struts注重于表现层和逻辑层的偶合,他主要是把业务逻辑和表现层区分开来;但是不涉及到业务与的关联。Spring主要是对业务的层次细化,也就是更深层次的降低耦合度。Spring的核心是个轻量级容器(container),实现了IoC模式的容器,Spring的目标是实现一个全方位的整合框架,在Spring框架下实现多个子框架的组合,这些子框架之间彼此可以独立,也可以使用其它的框架方案加以替代,Spring希望提供one-stop shop(一站式)的框架整合方案。
Spring不会特别去提出一些子框架来与现有的OpenSource框架竞争,除非它觉得所提出的框架够新够好,例如Spring有自己的 MVC框架方案,因为它觉得现有的MVC方案有很多可以改进的地方,但它不强迫您使用它提供的方案,您可以选用您所希望的框架来取代其子框架,例如您仍可以在Spring中整合您的Struts框架。
Spring的核心概念是IoC,IoC的抽象概念是「依赖关系的转移」,像「高层模块不应该依赖低层模块,而是模块都必须依赖于抽象」是IoC的一种表现,「实现必须依赖抽象,而不是抽象依赖实现」也是IoC的一种表现,「应用程序不应依赖于容器,而是容器服务于应用程序」也是IoC的一种表现。
Spring的核心即是个IoC/DI的容器,它可以帮程序设计人员完成组件之间的依赖关系注入(连结),使得组件之间的依赖达到最小,进而提高组件的重用性,Spring是个低侵入性(invasive)的框架,Spring中的组件并不会意识到它正置身于Spring中,这使得组件可以轻易的从框架中脱离,而几乎不用任何的修改,反过来说,组件也可以简单的方式加入至框架中,使得组件甚至框架的整合变得容易。
Spring最为人重视的另一方面是支持AOP(Aspect-Oriented Programming,面向方面编程),然而AOP框架只是Spring支持的一个子框架,说Spring框架是AOP框架并不是一件适当的描述,人们对于新奇的 AOP关注映射至Spring上,使得人们对于Spring的关注集中在它的AOP框架上,虽然有所误解,但也突显了Spring的另一个令人关注的特色。
Spring也提供MVC Web框架的解决方案,但您也可以将自己所熟悉的MVC Web框架与Spring解合,像是Struts、Webwork等等,都可以与Spring整合而成为适用于自己的解决方案。
Spring也提供其它方面的整合,像是持久层的整合如JDBC、O/R Mapping工具(Hibernate、iBATIS)、事务处理等等,Spring作了对多方面整合的努力,故说Spring是个全方位的应用程序框架。
想要入门Spring,对于IoC/DI的了解是必要的。
什么是IoC?什么是DI?
IoC全名Inversion of Control,如果中文硬要翻译过来的话,就是「控制反转」。初看IoC,从字面上不容易了解其意义,我觉得要了解IoC,要先从Dependency Inversion开始了解,也就是依赖关系的反转。(幻灯片)
Spring所采用的是Dependency Injection来实现IoC,中文翻译为依赖注入,依赖注入的意义是:保留抽象接口,让组件依赖于抽象接口,当组件要与其它实际的对象发生依赖关系时,藉过抽象接口来注入依赖的实际对象,形象地来说,即由容器动态的将某种依赖关系注入到组件之中。
来看这样的一个例子:
现在有笔记本电脑、USB移动硬盘、U盘各一只。这三个设备都有一个共同点,就是都支持USB接口。当我们需要将数据复制到外围存储设备时,可以根据情况,选择是保存在U盘还是移动硬盘,下面的操作大家也都轻车熟路,无非接通USB接口,然后在资源浏览器之那个将选定的文件拖放到指定的盘符。
而这也正是所谓依赖注入的一个典型案例。在例子中,笔记本电脑与外围存储设备通过预先指定的一个接口(USB)相连,对于笔记本而言,只是将用户指定的数据发送到USB接口,而这些数据何去何从,则由当前接入的USB设备决定。在USB设备加载之前,笔记本不可能预料用户将在USB接口上接入何种设备,只有USB设备接入之后,这种设备之间的依赖关系才开始形成。
对应上面关于依赖注入机制的描述,在运行时(系统开机,USB设备加载)由容器(运行在笔记本中的Windows操作系统)将依赖关系(笔记本依赖USB设备进行数据存取)注入到组件中(windows文
您可能关注的文档
- [小学教育]最漂亮的PPT背景图片免费下载.ppt
- [小学教育]有哪些信誉好的足球投注网站引擎使用技巧与常用有哪些信誉好的足球投注网站引擎简介.ppt
- [小学教育]渤海镇中心小学校本课程开发纲要.doc
- [小学教育]数字逻辑电路第4章.ppt
- [小学教育]特殊渠道之KA运做.ppt
- [小学教育]焊接技术讲座.doc
- [小学教育]焊缝超声波探伤.ppt
- [小学教育]槐乡五月111.ppt
- [小学教育]电工技术.ppt
- [小学教育]水资源.ppt
- 人教版九年级英语全一册单元速记•巧练Unit13【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit9【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit11【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit14【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit8【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit4【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit13【单元测试·基础卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit7【速记清单】(原卷版+解析).docx
- 苏教版五年级上册数学分层作业设计 2.2 三角形的面积(附答案).docx
- 人教版九年级英语全一册单元速记•巧练Unit12【单元测试·基础卷】(原卷版+解析).docx
文档评论(0)