举个例子:
某个富人找兰博基尼定制载具,一开始他要兰博基尼最出名的Aventador:Lamborghini lambo = new Aventador();
Rich richOne = new Rich();
richOne.purchase(lambo);有一天,富人觉得Aventador不够大,要辆SUV:Urus
那兰博组装师给Aventador开瓢,按Urus来做,做完还得检验下质量
**对于Java,相当于:打开源文件改,改完后还得再重新编译:**Lamborghini lambo = new Urus();
Rich richOne = new Rich();
richOne.purchase(lambo);临近交付了,富人又改口要兰博基尼的快艇了:Lamborghini lambo = new boat();
Rich richOne = new Rich();
richOne.purchase(lambo);兰博工程师、组装师:...Vaffanculo!!!

此时,兰博基尼刚好从法拉利那边挖来一个人才,小名叫Spring,他带了他的助理,名字缩写是DI,即依赖注入

Spring和其DI携手帮兰博基尼解决这个令人头大的富豪:
亚特兰蒂斯金属(applicationContext.xml),随时更改其配置,为所需产品添加或替换属性值即可**(即在java中的实现类对象的成员变量的属性值)**

按富人需求改金属属性(配置文件)即可;不再需拆车,不再伤筋动骨(解耦),大大降低工作量,这减少的工作量即为Spring + DI的好处

Spring依赖注入的作用相关推荐

  1. arg是什么函数_java后端开发三年!你还不了解Spring 依赖注入,凭什么给你涨薪...

    前言 前两天和一个同学吃饭的时候同学跟我说了一件事,说他公司有个做了两年的人向他提出要涨薪资,他就顺口问了一个问题关于spring依赖注入的,那个要求涨薪的同学居然被问懵了...事后回家想了想这一块确 ...

  2. spring依赖注入_Spring源码阅读:Spring依赖注入容器

    依赖注入 依赖注入是Spring框架最核心的能力,Spring框架提供的AOP,WebMVC等其它功能都是以依赖注入容器作为基础构建的,Spring依赖注入容器类似于一个用于组装对象的框架内核,任何应 ...

  3. Spring 依赖注入的理解及三种注入方式

    Spring 依赖注入概念和三种注入方式(理解及应用) 什么是注入 要了解Spring的三种注入方式首先前提是得先了解一下什么是注入,相信很多人对这个概念都是模糊不清的,网上的解释是这样的: 依赖注入 ...

  4. Spring依赖注入(注解方式)

    Spring依赖注入(注解方式) 在Spring中,尽管使用XML配置文件就可以实现Bean的装配工作,但如果应用中Bean的数量较多,会导致XML配置文件过于臃肿,从而给程序的维护与升级带来一定的困 ...

  5. Spring依赖注入与自动装配

    Spring依赖注入与自动装配 首先推荐狂神说的Spring讲义 1.Beans.xml作用 简而言之,我们通过在beans.xml中进行配置,将各种类交给spring来管理. 2.依赖注入 推荐狂神 ...

  6. Java程序员进阶——Spring依赖注入原理分析

    Spring依赖注入原理分析 下面谈谈Spring是如何实现反转模式IOC或依赖注入模式DI: 平时,我们需要生成一个对象,使用new语法,如一个类为A public class A{public v ...

  7. spring 依赖注入

    Technorati 标记: spring,依赖注入,DI,ioc 平常的java开发中,程序员在某个类中需要依赖其它类的方法,则通常是new一个依赖类再调用类实例的方法,这种开发存在的问题是new的 ...

  8. java接口注入对象的意义_Java Web系列:Spring依赖注入基础

    一.Spring简介 1.Spring简化Java开发 Spring Framework是一个应用框架,框架一般是半成品,我们在框架的基础上可以不用每个项目自己实现架构.基础设施和常用功能性组件,而是 ...

  9. spring依赖注入原理(转载)

    关于spring依赖注入原理的文章在网络上已经有很多,我要写的这篇文章原文出自http://taeky.iteye.com/blog/563450,只所以再一次写下来只是为了一为自己收藏,方便以后的复 ...

最新文章

  1. 【FFmpeg】RTSP、RTMP相关命令及开源项目
  2. PHP mysql_real_escape_string() 函数
  3. Linux fprintf的用法
  4. 为什么数字中台是企业应用新基建?
  5. 创建界面_《魔兽世界》智慧烈风buff延长 9.0版本角色创建界面改动
  6. Mybatis的两种分页方式:RowBounds和PageHelper
  7. 工业机器人常用语言---val语言介绍
  8. Linux(Ubuntu系统)安装yum及源的更新(详细操作+文字描述!!!)
  9. 鱼塘钓鱼题解(堆解决)
  10. Conda更新或安装包时出现Verifying transaction: failed+SetupToolsRemoveError
  11. matlab 12脉波变压器,12脉波整流电路MATLAB-Simulink仿真及谐波分析
  12. html网页如何在手机上实现,html和css结合实现手机端网页自适应的代码
  13. 计算机流程图知识点,高中数学流程图知识点
  14. 大数据三驾马车,第一个上市的Hortonworks要翻车了?
  15. Arduino:设置ADC参考电压
  16. 锐捷ac怎么发现局域网ap_锐捷AC配置步骤备忘
  17. google和edge浏览器崩溃,错误代码: STATUS_STACK_BUFFER_OVERRUN
  18. (Python)Numpy矩阵增加/减少一个维度
  19. 微软word两排字左右对齐的方法
  20. filebeat 收集json格式_Filebeat 采集日志实践经验记录

热门文章

  1. 计算机硬件升级的说法有哪些,客户让我给他的电脑升级,看到电脑配置后:看来升级又凉凉了!...
  2. android播放铃声
  3. postgres中查看函数创建语句
  4. 如何维系人脉?快点进来看看吧!
  5. 林仕鼎谈架构设计与架构师
  6. C程序设计 假如我国国民生产总值的年增长率为7%,计算10年后我国国民生产总值与现在相比增长多少百分比。计算公式为p=(1+r)^n,r为年增长率,n为年数,p为与现在相比的倍数。
  7. JS获取当前使用的浏览器
  8. 创业俱乐部:为创业者指点迷津
  9. 线段树 --算法竞赛专题解析(24)
  10. http://www.xueh188.top/index.php/archives/36/