美文网首页
谈谈spring中的控制反转和依赖注入

谈谈spring中的控制反转和依赖注入

作者: 谜00016 | 来源:发表于2018-07-17 15:59 被阅读90次

在Java世界里,有个不得不说的框架,那就是spring(春天)!没错,spring可以说是java开发者的春天了。spring框架专注于优秀框架的整合而非重复造轮子。
在spring中有两个经常被提及的概念,一个是控制反转(Inversion of Control,IOC),一个是依赖注入(Dependency Injection DI)

什么是IOC

IOC即控制反转。我们模拟一个场景,小明生在红旗下长在春风里,是咱们社会主义接班人。小明是当今社会自由恋爱的践行者,他可以选择和他喜欢的姑娘约会恋爱,父母也没权干涉(儿大不由娘啊)。但是天有不测风云,一天小明醒来发现自己穿越了(至于怎么穿越我也不知道啊),穿越到了古代,这下蛋疼了,小明的婚姻大事只能听从父母之言媒妁之约,一下子婚姻恋爱主权由自己控制转变为父母和媒人控制了。虽然例子有点荒诞,但却很好的说明了什么是控制反转。对应在编程世界,我们原先需要对象(不是女朋友啊,是Object),一般都是主动new出,这是控制正转,到spring这就不行了,你想要对象实例,ok,你必须通过请求(注解或xml配置方式)获取到对象实例,所有的实例对象由IOC容器管理。

什么是DI

DI即依赖注入。依赖注入的概念其实和控制反转本质是一样的。只是解读的维度不一样。我们用下面一张图示意一下 image.png

看到了吗?小明在古代娶媳妇儿依赖父母和媒人,而在自由恋爱的现代社会需要自己找(new)。好像这么看来自由恋爱更好吧。小伙子你还是太年轻了,自由恋爱你得花心思找个顺眼的姑娘吧,得了解她吧,得花时间和金钱追求她吧,没准时不时还给你点小脾气。但是古代就不一样了,您老就直接等着入洞房了咯(此处应有猥琐的表情),至于如何找到姑娘,如何谈判(对应的类实例就是配置属性),完全不用管,很牛叉有木有!!
现在大家应该理解了什么是控制反转和依赖注入了吧,哈哈!他们不是一项具体的技术,而是一种编程思想,具备良好的编程思想才能设计出更健壮的系统!

相关文章

  • 谈谈spring中的控制反转和依赖注入

    在Java世界里,有个不得不说的框架,那就是spring(春天)!没错,spring可以说是java开发者的春天了...

  • Spring 原理概述

    Spring 原理概述 Spring 两大核心:控制反转(IoC)/ 依赖注入(DI)面向切面(AOP) 控制反转...

  • 6.Spring IoC练习

    1. 依赖注入和控制反转 依赖注入和控制反转IoC是什么Ioc—InversionofControl,即“控制反转...

  • 依赖注入

    依赖注入(DI) Spring 最认同的技术是控制反转的依赖注入(DI)模式。控制反转(IoC)是一个通用的概念,...

  • Spring入门01--基本知识

    一, Spring框架的核心机制:依赖注入DI和控制反转IOC 理解控制反转IOC(Inversion Of Co...

  • spring之控制反转和依赖注入

    Spring学习(三)IOC控制反转与DI依赖注入

  • JAVA IOC 与 DI

    依赖倒置、控制反转和依赖注入的区分 依赖倒置、控制反转和依赖注入的区分依赖倒置(Dependency Invers...

  • Spring Framework 5

    Spring的核心理念:控制反转(依赖注入)和AOP Spring框架是用来整合Mybatis和SpringMVC...

  • spring面试问题总结(1-20)

    一. 介绍一下Spring IOC (控制反转,依赖注入)? Spring支持三种依赖注入方式,分别是属性(Set...

  • SSM框架系列学习总结1之Spring Ioc

    今天来总结Spring容器的Ioc(控制反转)和DI(依赖注入)! Spring的核心思想,ioc 和 diIoc...

网友评论

      本文标题:谈谈spring中的控制反转和依赖注入

      本文链接:https://www.haomeiwen.com/subject/vstgpftx.html