- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
框架程序设计java 框架程序设计java 框架程序设计java * * 第6章 Spring框架基础 之控制反转 框架程序设计(Java) * 6.0学习目标 理解控制反转 1 多种依赖注入方式 2 各种类型的属性注入 3 软件工程系本科课件 框架程序设计java * 6.1理解控制反转 控制反转(IoC:Inversion of Control)是轻量级Spring框架的核心 也可以称为依赖注入(DI:Dependency Injection) 控制反转和依赖注入只是从不同的角度描述同一件事情,两者都是通过Spring容器来实现的 控制反转可以理解为创建对象的过程交给了Spring容器,而不是我们通过new的方式来创建,控制权反转 依赖注入解除了两个对象间的强依赖关系,我们可以将一个对象注入到另外一个对象 软件工程系本科课件 框架程序设计java * 6.1理解控制反转 控制反转的运行机理【理解】 上节课我们从Spring容器中获取bean之前,首先要初始化我们容器的上下文ApplicationContext,如下: ApplicationContext context=new ClassPathXmlApplicationContext(applicationContext.xml); 软件工程系本科课件 框架程序设计java * 6.1理解控制反转 控制反转的运行机理【理解】 applicationContext.xml内容,如下: beans bean id=userService class=service.UserService property name=name value张三/value /property /bean /beans 软件工程系本科课件 框架程序设计java * 6.1理解控制反转 在初始化容器上下文的过程中,发生了如下逻辑: 1、Spring加载配置文件applicationContext.xml 2、当读取到配置文件中的bean标签时,会根据指定的class通过反射的方式创建对象保存到内存中,如下 Class bean = Class.forName(“全类名”); Object obj = bean.newInstance(); 3、当读取到bean标签中的property属性时,通过反射的方式调用指定name属性的set方法,将value值注入进去,如下: Method method = bean.getMethod(attributename, String.class); method .invoke(obj,value); 软件工程系本科课件 框架程序设计java * 6.2多种依赖注入方式 三种依赖注入方式 接口注入【不常用】 setter注入 通过反射调用属性的set方法注入到bean中 构造方法注入 通过反射调用bean类的构造方法完成注入 软件工程系本科课件 框架程序设计java * 6.2多种依赖注入方式 例1:在Java Project中的domain包下,有一个雇员类(Employee),如下: public class Employee { private String name; private int age; private String sex; //省略get/set方法 } 要求:将该类配置到Spring容器中,并初始化三个属性(name:张三,age:25,sex:男) 软件工程系本科课件 框架程序设计java * 6.2多种依赖注入方式-setter注入 setter注入配置如下: bean id=employee class=domain.Employee property name=name value=张三/property property name=age value=25/property property name=sex value=男/property /bean 说明: 1、property标签的含义是name指定的属性通过setter方法注入,name指定被注入的属性名称,value为注入的具体的值 2、property标签中值的注入也可以用如下形式: property name=name value张三/value /property 软件工程系本科课件 框架程序设计java * 6.2多种依赖注入方式-构造方法注入 构造方法注入配置如下: 1、首先在Employee中定义一个构造方法,如下: public class Employee { private String name; private int age; private S
您可能关注的文档
- JavaEE框架技术(SpringMVC+Spring+MyBatis)课件1 MyBatis入门.ppt
- JavaEE框架技术(SpringMVC+Spring+MyBatis)课件02MyBatis 基础操作-简单查询.ppt
- JavaEE框架技术(SpringMVC+Spring+MyBatis)课件02MyBatis 基础操作-增删改.ppt
- JavaEE框架技术(SpringMVC+Spring+MyBatis)课件03MyBatis复杂查询-关联查询.ppt
- JavaEE框架技术(SpringMVC+Spring+MyBatis)课件03MyBatis复杂查询-集合查询-1.ppt
- JavaEE框架技术(SpringMVC+Spring+MyBatis)课件03MyBatis复杂查询-集合查询-2.ppt
- JavaEE框架技术(SpringMVC+Spring+MyBatis)课件03MyBatis复杂查询-鉴别器.ppt
- JavaEE框架技术(SpringMVC+Spring+MyBatis)课件04 01MyBatis自动生成工具.ppt
- JavaEE框架技术(SpringMVC+Spring+MyBatis)课件04MyBatis动态sql.ppt
- JavaEE框架技术(SpringMVC+Spring+MyBatis)课件05SpringMVC框架-简易的MVC框架.ppt
- JavaEE框架技术(SpringMVC+Spring+MyBatis)课件05Spring框架基础-控制反转2.ppt
- JavaEE框架技术(SpringMVC+Spring+MyBatis)课件05Spring框架基础-注解方式实现AOP.ppt
- JavaEE框架技术(SpringMVC+Spring+MyBatis)课件06SpringMVC-RequestMapping设置以及前后台数据交互.pptx
- JavaEE框架技术(SpringMVC+Spring+MyBatis)课件06SpringMVC-第一个程序.pptx
- JavaEE框架技术(SpringMVC+Spring+MyBatis)课件09SpringMVC-文件上传下载.ppt
- JavaEE框架技术(SpringMVC+Spring+MyBatis)课件09SpringMVC-文件上传下载及异步数据传输.ppt
- JavaEE框架技术(SpringMVC+Spring+MyBatis)课件12SSM集成.ppt
- JavaEE框架技术(SpringMVC+Spring+MyBatis)课件12SSM集成之整理.ppt
- JavaEE框架技术(SpringMVC+Spring+MyBatis)课件13 简化进销存项目的需求分析与设计.ppt
- JavaEE框架技术(SpringMVC+Spring+MyBatis)课件mybatis复习要点.ppt
原创力文档


文档评论(0)