现在的位置: 首页 > 综合 > 正文

分析IoC的注解

2018年05月11日 ⁄ 综合 ⁄ 共 1276字 ⁄ 字号 评论关闭

暑期的時候研究spring的成果。

轉載自 http://youngershen.com/blog/

其實我到現在還不知道是怎麼回事,

如果你問我為什麼是繁體字,那是因為我剛玩wow台服了,

昨晚出了件藍裝盔甲,作為MT我鴨梨很大。

昨天就改写的这篇分析IoC的注解。

 

之前也不太清楚IoC机制到底是怎么回事,只是模糊的知道一点其中和SSH有点什么关系,不知道是个技术名词,也有看过一点Spring,虽然ssh用起来很厉害,但是不知道里面究竟是怎么回事,我想表达的是,不知道里面究竟是怎么回事就是说不知道是怎么造出来的,很多文章书籍里面都在说什么注入,怎么注入,怎么控制注入,反转控制之类的是如何关键,如何重要,在设计模式中是怎样的好用,怎样的强大,虽然也是刚开始入门Java EE,面对SSH这样的高深的东西最好是能理解里面到底是怎么回事,到底为什么要这样做,怀着这样一份心情我开始研究Spring到底是什么回事,买了一份2.5元的文档开始研究。大多数理解都来源于
<Spring解密>,当然也是可以当作读书笔记来看的,反正我认为java web的开发就写配置文件来说是一件很郁闷的事情。

 

IoC是(Inversion of Control)的缩写

  中文译为控制反转

  IOC的基本概念是:不创建对象,但是描述创建它们的方式。在代码中不直接与对象和服务连接,但在配置文件中描述哪一个组件需要哪一项服务。容器负责将这些联系在一起。

  IoC设计模式重点关注组件的依赖性、配置以及生命周期。当然IoC也适用于简单类,而不只是组件。除了具有“Dependency Injection”(依赖注入)的昵称外,IoC还有另一个称呼,即Hollywood原则(”Don’t call me,I’ll call you,请不要调用我,我将调用你),Ioc设计模式实现了“面向接口编程,而不是实现”的原则。

  IOC是Inversion of Control的缩写,多数书籍翻译成“控制反转”,还有些书籍翻译成为“控制反向”或者“控制倒置”。

上面的是简单的官方解释,其实说到底控制反转就是为了业务逻辑和逻辑实现上的分离技术,这个方面是需要严重解耦的,耦合性越低代码的重用程度才可以尽量放到最大,其中用到的关键技术就是注入了,可能很多人都听过,其中就是可以使用这种技术让你的每个类尽量保持没有关系,如果依赖类中存在被依赖类的过多的初始化信息的话那么,依赖类将会被严重污染,这样就会很麻烦,而且依赖类只是需要被依赖类的某个功能而已,所以也不是必须就需要新鲜对象,这个时候如果同时控制几百上千个类的初始化工作就会处于颓势,所以这个时候就出现了把被依赖类注入依赖类。

 

是的,就是不要调用我,我来找你,这个过程其实还是比较麻烦的,大致可以通过三种方法来实现,setter注入,构造注入和签名注入,看名字就知道这里面其实只是声明的被以来对象的类型,真正实现调度的是 IoC Service Provider, 它是实现调度的类或者是某个代码块,某个方法,并不是确定的某个东西。

不过真正的调度机制我还不太懂,懂了再写上来吧

抱歉!评论已关闭.