第1章-spring简介 ioc理论幻灯片PPT资料.ppt
- 文档编号:14712751
- 上传时间:2022-10-24
- 格式:PPT
- 页数:34
- 大小:982.50KB
第1章-spring简介 ioc理论幻灯片PPT资料.ppt
《第1章-spring简介 ioc理论幻灯片PPT资料.ppt》由会员分享,可在线阅读,更多相关《第1章-spring简介 ioc理论幻灯片PPT资料.ppt(34页珍藏版)》请在冰豆网上搜索。
432课程目标课程目标学习内容Spring原理SpringIOC/DISpringAOPSpring整合HibernateSpring整合Hibernate+Struts学习目标掌握Spring基本原理能够使用Spring的依赖注入方式能够使用Spring面向切面编程掌握Spring整合Hibernate的应用掌握SSH整合的应用实战项目综合项目:
使用SSH整合开发网上书店本章内容本章内容了解Spring的背景了解Spring的工作原理BeanFactory接口ApplicationContext接口依赖注入方式本章目标本章目标熟悉Spring的工作原理理解BeanFactory和ApplicationContext掌握设值注入掌握构造注入1.Spring简介简介Spring的基础架构起源于2000年早期,它是RodJohnson在一些成功的商业项目中构建的基础设施在2002后期,RodJohnson发布了ExpertOne-on-OneJ2EEDesignandDevelopment一书2003年2月Spring框架正式成为一个开源项目,并发布于SourceForge中Spring的不存在竞争对手,因为它能够整合其他的框架或者中间件,例如:
Struts,JSF1.1Spring历史1.2Spring工作原理工作原理Spring是一种用JavaBean配置应用程序的方法运用Spring,可以通过一个setter方法来暴露一个类的任何依赖关系(如一个数据库连接),只要在Spring中进行配置来解决依赖性,不用编写一个数据库连接Spring的表现在:
高层模型组建不该依赖底层模型组建,而是模型组建必须依赖抽象实现必须依赖抽象,而不是抽象依赖实现应用程序不依赖与容器1.3Spring框架简介框架简介Spring框架开源框架用于解决企业应用程序开发复杂性一个轻量级的IoC和AOP容器框架一个解决了许多在J2EE开发中常见的问题的强大框架Spring框架简介框架简介Spring框架有7个模块,每个模块都可以单独存在,或者与其他一个或多个模块联合实现2.SpringBean封装机制封装机制Spring以Bean的方式管理所有的组件,J2EE的全部组件都被视为Bean管理Spring负责创建Bean的实例,并管理其生命周期Bean在Spring的容器中运行,无须知道Spring容器的存在也可以使用Spring的一些特性2.1SpringBean的定义SpringBean封装机制封装机制最简单的SpringXML配置文件定义bean管理实体对象2.2BeanFactoryBeanFactory由org.springframework.beans.factory.BeanFactory接口定义BeanFactory是工厂模式(Factorypattern)的实现,负责创建和管理beanBeanFactoryBeanFactory接口包含以下基本方法containsBean(Stringname)getBean(Stringname)getBean(Stringname,Classclass)getType(Stringname)2.3ApplicationContextApplicationContext是基于BeanFactory之上的,提供了应用程序框架服务,扩展的新功能如下提供国际化的支持资源访问,如URL和文件事件传递载入多个配置文件等ApplicationContext按照指定路径下的applicationContext.xml和bean.xml创建ApplicationContextBeanFactorybeanFactory=newFileSystemXmlApplicationContext(newString/WebRoot/WEB-INF/classes/applicationContext.xml,/WebRoot/WEB-INF/classes/bean.xml);
ApplicationContext搜索classpath路径,以classpath路径下的applicationContext.xml和bean.xml创建ApplicationContextBeanFactorybeanFactory=newClassPathXmlApplicationContext(newStringapplicationContext.xml,bean.xml);
2.4Bean的基本行为和应用的基本行为和应用Bean在Spring的容器有两种基本行为singleton:
单态,Spring容器里只有一个共享的实例存在non-singleton或prototype:
原型,每次请求ID的bean都将产生新的实例Bean的基本行为和应用的基本行为和应用按照singleton,配置文件定义一个数据源的beanBean的基本行为和应用的基本行为和应用测试该数据源是否为singleton的方法TestpublicvoidtestDataSource()throwsSQLException/获得数据源DataSourceds1=(DataSource)ctx.getBean(dataSource);
DataSourceds2=(DataSource)ctx.getBean(dataSource);
System.out.println(ds1=ds2);
测试结果为:
trueBean的基本行为和应用的基本行为和应用按照non-singleton,配置文件定义一个实体对象的beanPrototype表示原型Bean的基本行为和应用的基本行为和应用测试该对象是否为non-singleton测试结果为:
falseTestpublicvoidtestSingleton()throwsSQLExceptionPropertiesBeanpropertiesBean1=(PropertiesBean)beanFactory.getBean(proBean);
PropertiesBeanpropertiesBean2=(PropertiesBean)beanFactory.getBean(proBean);
System.out.println(propertiesBean1=propertiesBean2);
3.SpringDI/IOC依赖注入,是指程序运行过程中,如果需要调用另一个对象协助时,无须在代码中创建被调用者,而是依赖于外部的注入3.1什么是Spring的依赖注入3.SpringDI/IOC实体对象间的依赖关系的演变过程传统调用方式工厂模式依赖注入3.2Spring的设值注入方式的设值注入方式设值注入是指通过setter方法传入被调用者的实例被调用者实体对象publicclassBoyprivateStringname=小明;
privateintage=20;
/省略get、set方法publicvoidprint()System.out.println(我的名字是:
+name);
System.out.println(我的年龄是:
+age);
Spring的设值注入方式的设值注入方式调用者实体对象publicclassGirlprivateStringname=;
privateintage=0;
/定义boy对象privateBoyboy;
/定义boy对象的set方法publicvoidsetBoy(Boyboy)this.boy=boy;
/省略get、set方法publicvoidkiss()boy.print();
通过setter方法注入Spring的设值注入方式的设值注入方式映射文件等价于Spring的设值注入方式的设值注入方式增加被调用者实体对象publicclassBoyprivateStringname=“小李;
privateintage=30;
Spring的设值注入方式的设值注入方式修改映射文件如下,将新的实体对象注入给调用者3.3Spring的构造注入方式的构造注入方式构造注入是指通过构造方法完成依赖关系的注入被调用者实体对象publicclassBoyprivateStringname=小明;
Spring的构造注入方式的构造注入方式调用者实体对象publicclassGirlprivateStringname=;
publicGirl()publicGirl(Boyboy)this.boy=boy;
通过构造方法注入Spring的构造注入方式的构造注入方式映射文件等价于3.4Spring注入方式的比较注入方式的比较设值注入的优点如果依赖关系(或继承关系)较为复杂,设值注入模式往往更为简洁有些地方有其局限性直观,更加自然构造注入的优点构造期即创建一个完整、合法的对象避免了繁琐的setter方法的编写无需担心在调用过程中执行setter方法对组件依赖关系产生破坏在构造函数中决定依赖关系的注入顺序总结总结Spring的工作原理BeanFactory接口的应用applicationContent对Bean的管理Spring依赖注入设值注入构造注入
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第1章-spring简介 ioc理论幻灯片 spring 简介 ioc 理论 幻灯片