65.什么是IOC?【从零开始学Spring Boot】

来源:互联网 发布:电脑如何激活windows 编辑:程序博客网 时间:2024/05/12 09:39

【从零开始学习Spirng Boot—常见异常汇总】

 

       这个小节吧,是无意当中看了一篇文章,觉得介绍的特别好,引用到我的博客中,让大家也乐下。那么他是怎么解说IOC的呢?看如下:

 

 

套用好莱坞的一句名言就是:你呆着别动,到时我会找你 
什么意思呢?就好比一个皇帝和太监 
有一天皇帝想幸某个美女,于是跟太监说,今夜我要宠幸美女 
皇帝往往不会告诉太监,今晚几点会回宫,会回哪张龙床,他只会告诉太监他要哪位美女 
其它一切都交由太监去安排,到了晚上皇帝回宫时,自然会有美女出现在皇帝的龙床上 
这就是控制反转,而把美女送到皇帝的寝宫里面去就是注射 
太监就是是框架里面的注射控制器类BeanFactory,负责找到美女并送到龙床上去 
整个后宫可以看成是Spring框架,美女就是Spring控制下的JavaBean 。

而传统的模式就是一个饥渴男去找小"jie(姐)"出台 
找领班,帮助给介绍一个云云,于是领班就开始给他张罗 
介绍一个合适的给他,完事后,再把"jie(姐)"还给领班,下次再来 
这个过程中,领班就是查询上下文Context,领班的一个职能就是给客户找到他们所要的小姐 
这就是lookup()方法,领班手中的"jie(姐)"名录就是JNDI//Java Naming and Directory Interface 
小姐就是EJB,饥渴男是客户端,青楼是EJB容器 
看到区别了么?饥渴男去找小"jie(姐)"出台很麻烦,不仅得找,用完后还得把小姐给还回去 
而皇帝爽翻了,什么都不用管,交给太监去处理,控制权转移到太监手中去了 
而不是皇帝,必要时候由太监给注射进去就可以了 

 是不是很逗,当然以面试的时候不能这么解说呢?

       IOC全称Inversion of Control,控制反转,这是一种设计思想。在Java开发中,ioc意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。

 

上面的案例引用链接:http://m.tuxi.com.cn/viewcsdn-39082-390822152.html

0 0
原创粉丝点击