中软内部培训资料课件

上传人:bin****86 文档编号:55743915 上传时间:2018-10-05 格式:PPT 页数:66 大小:1.37MB
返回 下载 相关 举报
中软内部培训资料课件_第1页
第1页 / 共66页
中软内部培训资料课件_第2页
第2页 / 共66页
中软内部培训资料课件_第3页
第3页 / 共66页
中软内部培训资料课件_第4页
第4页 / 共66页
中软内部培训资料课件_第5页
第5页 / 共66页
点击查看更多>>
资源描述

《中软内部培训资料课件》由会员分享,可在线阅读,更多相关《中软内部培训资料课件(66页珍藏版)》请在金锄头文库上搜索。

1、Spring,主讲:温春水,时间安排,3天 第一天 Spring 基本概念(IOC) 第二天 AOP 第三天 Spring 整合Struts,Hibernate SSH,目标,理解Spring 实现原理 掌握Spring IOC,AOP 掌握Spring的基础配置和用法 熟练使用SSH开发项目,主要内容,Spring 概述 Spring 整体结构 Spring实例 Spring核心概念介绍 控制反转(IOC) 依赖注入(DI) 集合对象注入等 Bean的管理 BeanFactory ApplicationContext Spring 在web中的使用,Spring 概述,Spring是一个容器

2、,它包含并且管理系统对象的生命周期和配置。 在SSH项目中管理事务以及对象的注入.,Spring 概述,轻量级的 灵活性 Rod JohnsonExpert one-on-one J2EE Design and Development,Spring 概述,Spring是非侵入式的:基于Spring开发的系统中的对象一般不依赖于Spring的类。,Spring整体介绍,Spring整体介绍,组成 Spring 框架的每个模块(或组件)都可以单独存在,或者与其他一个或多个模块联合实现,Spring实例,先看一个实例,Spring,配置文件 applicationContext.xml,applic

3、ationContext,testgooooooogle,函数调用,ApplicationContext ctx=new FileSystemXmlApplicationContext(“E:workspacespringProjectWebRootWEB-INFclassesapplicationContext.xml“); SpringTest st =(SpringTest) ctx.getBean(“test1“); System.out.println(st.getMessage();,优点,组件间的依赖关系减少,极大改善了代码的可重用性。 不需要实现框架指定的接口,因此可以轻松的将

4、组件从Spring中脱离,甚至不需要任何修改 Spring的依赖注入机制,可以在运行期为组件配置所需资源,而无需在编写组件代码时就加以指定,从而在相当程度上降低了组件之间的耦合。,核心容器,核心容器提供 Spring 框架的基本功能。核心容器的主要组件是 BeanFactory(ApplicationContext). BeanFactory 使用控制反转 (IOC) 模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。,Spring基本概念,IOC Inverse Of Control DI Dependence Injection AOP 面向接口 面向抽象,IOC an DI,IO

5、C IoC就是Inversion of Control,控制反转。在Java开发中,IoC意味着将你设计好的类交给系统去控制,而不是在你的类内部控制。这称为控制反转。 保存到Floppy或者USB,IOC,IOC and DI,Martin Fowler,DI,依赖注入 所谓依赖注入,即在运行期由容器将依赖关系注入到组件之中。 是在运行期,由Spring根据配置文件,将其他对象的引用通过组件的提供的setter方法进行设定。,IOC和DI的关系,通过DI来实现IOC /www.springframework.org / /www.hibernate.org /www.struts.org /(

6、struts),DI,Type1 接口注入 Type2 设值注入 Type3构造子注入,type2,setter,type3,Constructor,实例,看一下依赖注入的示例,属性参考,属性参考,自动绑定,绑定的到底是什么? 某个对象是另外一个对象的属性 Autowire byType byName Constructor autodetect,byName,byType,绑定发生异常怎么办?,如果有的属性没有完成自动绑定怎么办? 如果能帮我们检查就好了 dependency-check Simple: object all none,绑定发生异常,simple只检查简单的属性是否完成依赖关

7、系,像是原生(primitive)数据类型或字符串对象 object设定则检查对象类型的属性是否完成依赖关系 all则检查全部的属性是否完成依赖关系 none设定默认值,表示不检查依赖性,绑定发生异常,org.springframework.beans.factory.UnsatisfiedDependencyException:,注入的value,valueref,集合对象注入,数组(String) List Set Map Properties 数组,List,Set本质上是一样的,String,Hello World注意:String使用list.,List,HelloList Worl

8、dList,Map,map1Valuemap2Value,Properties,一般用在事务里面:prop1Value prop2Value prop3Value,集合的取值,ApplicationContext context=new FileSystemXmlApplicationContext(“benas-config.xml“); SomeBean someBean=(SomeBean)context.getBean(“someBean“); String strs=(String)someBean.getSomeStrArray(); Some somes=(Some)someBe

9、an.getSomeObjArray(); for(int i=0;i “+msg);,资源访问,ApplicationContext.getResource方法提供了对资源文件访问支持,如: Resource rs = ctx.getResource(“classpath:config.properties“); File file = rs.getFile(); Resource.exists()来判断文件是否存在,事件传播,ApplicationContext基于Observer模式,PropertyPlaceholderConfigurer,.propertiesclasspath:h

10、ibernate.properties$che,PropertyPlaceholderConfigurer,使用PropertyPlaceholderConfigurer类,需经过以下3个步骤:,在applicationContext.xml中配置, WEB-INF/jdbc.properties ,在jdbc.properties中配置jdbc的链接参数,jdbc.driverClassName=org.hsqldb.jdbcDriver jdbc.url=jdbc:hsqldb:hsql:/localhost:9002 jdbc.username=sa jdbc.password=,注意,

11、如果不是web应用,可以把applicationContext.xml放到项目的根目录下,并把.properties文件也放到该目录下即可。,在配置文件中引用参数, $jdbc.driverClassName $jdbc.url $jdbc.username $jdbc.password 其中$jdbc.url等参数引用了jdbc.properties属性文件的参数。 这样做的好处是可以将需要配置的属性参数集中在一个地方。,Spring在web中的应用,如何在web应用中使用依赖注入 注意要把applicationContext.xml放到WEB-INF下面.,第一步,在web.xml中加入:contextConfigLocation/WEB-INF/applicationContext.xml,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > 其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号