您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > Spring4经典教程
B\STomcatdbBrowserStruts2FilterServiceHiberntateSpringIOCTransactionManagerShiroQuartzHelloWorldSpring是什么(1)Spring是一个开源框架.Spring为简化企业级应用开发而生.使用Spring可以使简单的JavaBean实现以前只有EJB才能实现的功能.Spring是一个IOC(DI)和AOP容器框架.Spring是什么(2)具体描述Spring:轻量级:Spring是非侵入性的-基于Spring开发的应用中的对象可以不依赖于Spring的API依赖注入(DI---dependencyinjection、IOC)面向切面编程(AOP---aspectorientedprogramming)容器:Spring是一个容器,因为它包含并且管理应用对象的生命周期框架:Spring实现了使用简单的组件配置组合成一个复杂的应用.在Spring中可以使用XML和Java注解组合这些对象一站式:在IOC和AOP的基础上可以整合各种企业应用的开源框架和优秀的第三方类库(实际上Spring自身也提供了展现层的SpringMVC和持久层的SpringJDBC)Spring模块安装SPRINGTOOLSUITESPRINGTOOLSUITE是一个Eclipse插件,利用该插件可以更方便的在Eclipse平台上开发基于Spring的应用。安装方法说明(springsource-tool-suite-3.4.0.RELEASE-e4.3.1-updatesite.zip):Help--InstallNewSoftware...安装SPRINGTOOLSUITE安装方法说明(springsource-tool-suite-3.4.0.RELEASE-e4.3.1-updatesite.zip):ClickAdd...安装SPRINGTOOLSUITE安装方法说明(springsource-tool-suite-3.4.0.RELEASE-e4.3.1-updatesite.zip):IndialogAddSitedialog,clickArchive...安装SPRINGTOOLSUITE安装方法说明(springsource-tool-suite-3.4.0.RELEASE-e4.3.1-updatesite.zip):Navigatetospringsource-tool-suite-3.4.0.RELEASE-e4.3.1-updatesite.zipandclickOpen安装SPRINGTOOLSUITE安装方法说明(springsource-tool-suite-3.7.0.RELEASE-e4.3.1-updatesite.zip):ClickingOKintheAddSitedialogwillbringyoubacktothedialog'Install'安装SPRINGTOOLSUITE安装方法说明(springsource-tool-suite-3.7.0.RELEASE-e4.3.1-updatesite.zip):ClickingOKintheAddSitedialogwillbringyoubacktothedialog'Install'安装SPRINGTOOLSUITE安装方法说明(springsource-tool-suite-3.7.0.RELEASE-e4.3.1-updatesite.zip):Selectthexxx/SpringIDEthathasappeared安装SPRINGTOOLSUITE安装方法说明(springsource-tool-suite-3.7.0.RELEASE-e4.3.1-updatesite.zip):ClickNextandthenFinish安装SPRINGTOOLSUITE安装方法说明(springsource-tool-suite-3.7.0.RELEASE-e4.3.1-updatesite.zip):Approvethelicense安装SPRINGTOOLSUITE安装方法说明(springsource-tool-suite-3.7.0.RELEASE-e4.3.1-updatesite.zip):Approvethelicense安装SPRINGTOOLSUITE安装方法说明(springsource-tool-suite-3.7.0.RELEASE-e4.3.1-updatesite.zip):Restarteclipsewhenthatisasked安装SPRINGTOOLSUITE安装方法说明(springsource-tool-suite-3.7.0.RELEASE-e4.3.1-updatesite.zip):Restarteclipsewhenthatisasked安装SPRINGTOOLSUITE安装方法说明(springsource-tool-suite-3.7.0.RELEASE-e4.3.1-updatesite.zip):检测是否安装成功安装SPRINGTOOLSUITE安装方法说明(springsource-tool-suite-3.7.0.RELEASE-e4.3.1-updatesite.zip):检测是否安装成功出现Spring说明安装成功了搭建Spring开发环境把以下jar包加入到工程的classpath下:Spring的配置文件:一个典型的Spring项目需要创建一个或多个Bean配置文件,这些配置文件用于在SpringIOC容器里配置Bean.Bean的配置文件可以放在classpath下,也可以放在其它目录下.注:1.commons-logging的jar包需单独下载2.Spring的四个Jar包在lib目录下建立Spring项目HelloWorld.javaapplicationContext.xml建立Spring项目Spring中的Bean配置内容提要IOC&DI概述IOC和DIIOC(InversionofControl):其思想是反转资源获取的方向.传统的资源查找方式要求组件向容器发起请求查找资源.作为回应,容器适时的返回资源.而应用了IOC之后,则是容器主动地将资源推送给它所管理的组件,组件所要做的仅是选择一种合适的方式来接受资源.这种行为也被称为查找的被动形式DI(DependencyInjection)—IOC的另一种表述方式:即组件以一些预先定义好的方式(例如:setter方法)接受来自如容器的资源注入.相对于IOC而言,这种表述更直接ABclassA{}classB{privateAa;publicvoidsetA(Aa){this.a=a;}}容器需求:从容器中获取B对象,并使B对象的a属性被赋值为容器中A对象的引用Aa=getA();Bb=getB();b.setA(a);ABIOC容器Bb=getB();IOC前身---分离接口与实现需求:生成HTML或PDF格式的不同类型的报表.这种方式的耦合度较高,ReportService类不仅要知道要创建的具体类是谁,还要知道创建的细节。IOC前生---采用工厂设计模式改进:由工厂负责创建具体的实现类,ReportService类无需知道实现类的创建细节以及实现类是谁就能拿到实现类,虽然耦合度一定程度上降低了(此时ReportService类仍需要自己去取得实现类的实例),但是代码的复杂程度却增加了。IOC---采用反转控制采用IoC方式:ReportService类无需自己去获取实现类的实例,这个实例由容器负责注入。内容提要配置bean配置形式:基于XML文件的方式;Bean的配置方式:通过全类名(反射)、通过工厂方法(静态工厂方法&实例工厂方法)、FactoryBeanIOC容器BeanFactory&ApplicationContext概述依赖注入的方式:属性注入;构造器注入注入属性值细节在Spring的IOC容器里配置Bean在xml文件中通过bean节点来配置beanid:Bean的名称。在IOC容器中必须是唯一的若id没有指定,Spring自动将权限定性类名作为Bean的名字id可以指定多个名字,名字之间可用逗号、分号、或空格分隔Spring容器在SpringIOC容器读取Bean配置创建Bean实例之前,必须对它进行实例化.只有在容器实例化后,才可以从IOC容器里获取Bean实例并使用.Spring提供了两种类型的IOC容器实现.BeanFactory:IOC容器的基本实现.ApplicationContext:提供了更多的高级特性.是BeanFactory的子接口.BeanFactory是Spring框架的基础设施,面向Spring本身;ApplicationContext面向使用Spring框架的开发者,几乎所有的应用场合都直接使用ApplicationContext而非底层的BeanFactory无论使用何种方式,配置文件时相同的.ApplicationContextApplicationContext的主要实现类:ClassPathXmlApplicationContext:从类路径下加载配置文件FileSystemXmlApplicationContext:从文件系统中加载配置文件ConfigurableApplicationContext扩展于ApplicationContext,新增加两个主要方法:refresh()和close(),让ApplicationContext具有启动、刷新和关闭上下文的能力ApplicationContext在初始化上下文时就实例化所有单例的Bean。WebApplicationContext是专门为WEB应用而准备的,它允许从相对于WEB根目录的路径中完成初始化工作从IOC容器中获取Bean调用ApplicationContext的getBean()方法如果只指定要返回的Bean的类型就想从IoC容器中取得Bean的前提是该类型的Bean在IoC容器中只有一个。依赖注入的方式Spring支持3种依赖注入的方式属性注入构造器注入工厂方法注入(很少使用,不推荐)属性注入属性注入即通过setter方法注入Bean的属性值或依赖的对象属性注入使用property元素,使用name属性指定Bean的属性名称,value属性或value子节点指定属性值属性注入是实际应用中最常用的注入方式构造方法注入通过构造方法注入Bean的属性值或依赖的对象,它保证了Bean实例在实例化后就可以使用。构造器注入在constructor-arg元素里声明属性,constructor-arg中没有name属性构造方法注入按索引匹配入参:构造方法注入按类型匹配入参:字面值字面值:可用字符串表示的值,可以通过value元素标签或value属性进行注入。基本数据类型及其封装类、String等类型都可以采取字面值注入的方式若字面值中包含特殊字符,可以使用![CDATA[]]把字面值包裹起来。beanid=car2class=cn.edu.nuc.spring.beans.Carconstructor-argvalue=Baomatype=java.lang.String/constructor-argtype=java.lang.String!--如果包含特殊字符要使用![CDATA[字面值]]将字面值包裹起来--value![CDATA[shanghai]]/value/constructor-argconstructor-argtype=intvalue250/value/con
三七文档所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
本文标题:Spring4经典教程
链接地址:https://www.777doc.com/doc-6340387 .html