2.1.2 Spring的IoC容器系列

上传人:s9****2 文档编号:561469729 上传时间:2023-04-18 格式:DOC 页数:2 大小:95KB
返回 下载 相关 举报
2.1.2 Spring的IoC容器系列_第1页
第1页 / 共2页
2.1.2 Spring的IoC容器系列_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

《2.1.2 Spring的IoC容器系列》由会员分享,可在线阅读,更多相关《2.1.2 Spring的IoC容器系列(2页珍藏版)》请在金锄头文库上搜索。

1、2.1.2 Spring的IoC容器系列IoC容器为开发者管理对象之间的依赖关系提供了很多便利和基础服务,有许多IoC容器供开发者选择,SpringFramework的IoC核心就是其中的一个,它是开源的。那具体什么是IoC容器呢?它在Spring框架中到底长什么样?其实对IoC容器的使用者来说,我们经常接触到的BeanFactory和ApplicationContext都可以看成是容器的具体表现形式。我们通常所说的IoC容器,如果深入到Spring的实现去看,会发现IoC容器实际上代表着一系列功能各异的容器产品,只是容器的功能有大有小,有各自的特点。我们举水桶为例子,在商店中出售的水桶有大有

2、小,制作材料也各不相同,有金属的、塑料的等,总之是各式各样,但只要能装水,具备水桶的基本特性,那就可以作为水桶来出售,来让用户使用。这在Spring中也是一样,Spring有各式各样的IoC容器的实现供用户选择和使用。使用什么样的容器完全取决于用户的需要,但在使用之前如果能够了解容器的基本情况,那对容器的使用是非常有帮助的,就像我们在购买商品前对商品进行考察和挑选那样。图2-2展示了这个容器系列的概况。就像商品需要有产品规格说明一样,同样,作为IoC容器,也需要为它的具体实现指定基本的功能规范,这个功能规范的设计表现为接口类BeanFactory,它体现了Spring为提供给用户使用的IoC容

3、器所设定的最基本功能规范。还是举前面我们说的百货商店出售的水桶为例子,如果把IoC容器看成一个水桶,那么这个BeanFactory就定义了可以作为水桶的基本功能,比如至少能装水,有个提手什么的。满足了基本的功能,为了不同场合的需要,水桶的生产厂家还在这个基础上为用户设计了其他各式各样的水桶产品,来满足不同的用户需求。这些水桶会提供更丰富的功能,有简约型的,有豪华型的,等等。但是,不管什么水桶,它都需要有一项最基本的功能:能够装水。那对Spring的具体IoC容器实现来说,它需要满足的基本特性是什么呢?它需要满足BeanFactory这个基本的接口定义,所以在图2-2中可以看到,这个BeanFa

4、ctory接口在继承体系中的地位,它是作为一个最基本的接口类出现在Spring的IoC容器体系中的。在这些Spring提供的基本IoC容器的接口定义和实现的基础上,Spring通过定义BeanDefinition来管理基于Spring的应用中的各种对象以及它们之间的相互依赖关系。BeanDefinition抽象了我们对Bean的定义,是让容器起作用的主要数据类型。我们都知道,在计算机的世界里,所有的功能都是建立在用数据对现实进行抽象的基础上完成的。IoC容器是用来管理对象依赖关系的,对IoC容器来说,BeanDefinition就是对依赖反转模式中管理的对象依赖关系的数据抽象,也是容器实现依赖

5、反转功能的核心数据结构,依赖反转功能都是围绕对这个BeanDefinition的处理上完成的。这些BeanDefinition就像是容器里装的水,有了这些基本数据,容器才能够发挥作用。在下面的分析中,BeanDefinition的上镜次数会很多,我们在这里先简单地打个招呼。同时,在使用IoC容器时,了解BeanFactory和ApplicationContext之间的区别对我们理解和使用IoC容器也是比较重要的。弄清楚了这两种重要容器之间的区别和联系,意味着我们具备辨别容器系列中不同容器产品的能力。还有一个好处就是,如果需要定制特定功能的容器实现,也能比较方便地在容器系列中找到一款恰当的产品作为参考。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号