UDN-企业互联网技术人气社区

板块导航

浏览  : 3965
回复  : 19

[框架] Spring核心思想 控制反转和依赖注射

[复制链接]
厨子右边卫的头像 楼主
发表于 2015-6-14 12:57:04 | 显示全部楼层 |阅读模式
什么叫控制反转呢?
套用好莱坞的一句名言就是:你呆着别动,到时我会找你。
什么意思呢?就好比一个皇帝和太监
有一天皇帝想幸某个美女,于是跟太监说,今夜我要宠幸美女
皇帝往往不会告诉太监,今晚几点会回宫,会回哪张龙床,他只会告诉太监他要哪位美女。其它一切都交由太监去安排,到了晚上皇帝回宫时,自然会有美女出现在皇帝的龙床上。这就是控制反转,而把美女送到皇帝的寝宫里面去就是注射。太监就是是框架里面的注射控制器类BeanFactory,负责找到美女并送到龙床上去
整个后宫可以看成是Spring框架,美女就是Spring控制下的JavaBean。

而传统的模式就是一个饥渴男去找小姐出台,找领班,帮助给介绍一个云云,于是领班就开始给他张罗。介绍一个合适的给他,完事后,再把小姐还给领班,下次再来。这个过程中,领班就是查询上下文Context,领班的一个职能就是给客户找到他们所要的小姐。这就是lookup()方法,领班手中的小姐名录就是JNDI//Java Naming and Directory Interface。小姐就是EJB,饥渴男是客户端,青楼是EJB容器。
看到区别了么?饥渴男去找小姐出台很麻烦,不仅得找,用完后还得把小姐给还回去。而皇帝爽翻了,什么都不用管,交给太监去处理,控制权转移到太监手中去了,而不是皇帝,必要时候由太监给注射进去就可以了。看到Spring的美妙了吧,Spring还提供了与多个主流框架的支持,可以和其它开源框架集成。
发表于 2015-6-14 13:14:10 | 显示全部楼层

回帖奖励 +10

这个比喻有意思
使用道具 举报

回复

发表于 2015-6-14 14:52:31 | 显示全部楼层
斑竹你好猥琐啊,不过却很形象让人非常容易理解
使用道具 举报

回复

发表于 2015-6-14 14:53:10 | 显示全部楼层

比较猥琐,哈哈
使用道具 举报

回复

厨子右边卫的头像 楼主
发表于 2015-6-14 14:59:02 | 显示全部楼层

哈哈
使用道具 举报

回复

厨子右边卫的头像 楼主
发表于 2015-6-14 14:59:55 | 显示全部楼层
有意思
这三个字含义非常丰富啊
使用道具 举报

回复

发表于 2015-6-15 10:54:29 | 显示全部楼层
这辈子别想找到老婆了,对spring理解咋样不知道,怎么着小姐特别清楚
点评 ( 3 ) 收起 / 展开点评

善解人衣 2015年06月15日 13:53 详情 回复

不信,要不爆照晒晒

善解人衣 2015年06月15日 13:53 详情 回复

不行,要不爆照晒晒

duangFeng 2015年06月15日 11:01 详情 回复

注定孤独终身啊

使用道具 举报

回复

发表于 2015-6-15 11:01:21 | 显示全部楼层
fsfsd 发表于 2015-6-15 10:54
这辈子别想找到老婆了,对spring理解咋样不知道,怎么着小姐特别清楚 ...

注定孤独终身啊
使用道具 举报

回复

厨子右边卫的头像 楼主
发表于 2015-6-15 11:05:24 | 显示全部楼层
fsfsd 发表于 2015-6-15 10:54
这辈子别想找到老婆了,对spring理解咋样不知道,怎么着小姐特别清楚 ...

其实我有女朋友
使用道具 举报

回复

发表于 2015-6-15 11:13:01 | 显示全部楼层
闲得无聊,这个帖子比较有意思,结合自己的经验补充楼主的几点疏忽。
1. 最开始的时候嫖妓并不是直接找老鸨子,而是自己找小姐,每次都很费劲自己找,也就是在类里面直接new一个对象。
2.后来进步了, 有了工厂模式,也就是认识了老鸨子,然后让老鸨子帮你介绍,只要你描述好要什么类型的。
   但是并不会用完还换回去,小姐会主动自己回去的,那里需要楼主送回去,java里面除非你弄了非new的类,不然不用你自己清理。
3. 然后服务行业更自动化,你制定一个招妓计划,老鸨子在你需要时主动把小姐送过来, 包养????
这个帖子是不是涉黄啊
   
使用道具 举报

回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关于我们
联系我们
  • 电话:010-86393388
  • 邮件:udn@yonyou.com
  • 地址:北京市海淀区北清路68号
移动客户端下载
关注我们
  • 微信公众号:yonyouudn
  • 扫描右侧二维码关注我们
  • 专注企业互联网的技术社区
版权所有:用友网络科技股份有限公司82041 京ICP备05007539号-11 京公网网备安1101080209224 Powered by Discuz!
快速回复 返回列表 返回顶部