自我提升

Spring 技术内幕(读书笔记)

2020-04-26  本文已影响0人  voidmian

IoC概述

IoC

依赖倒置原则:抽象不依赖具体的细节


使用场景

用于解耦组件之间复杂关系

在Spring中,Spring IoC提供了基本的JavaBean容器,通过IoC来管理组件之间的关系,并且通过依赖注入和AOP切面增强了为JavaBean这样的POJO对象赋予事务管理、生命周期管理等基本功能。


IoC容器的设计与实现

Spring的IoC容器系列

我们通常所说的IoC容器,实际上代表着一系列功能各异的容器产品。

以水桶为例,在商店中出售的水桶有大有小,制作材料各不相同,金属的、塑料的各式各样,但是只要能够装水,具有水桶的特性就可以当做水桶来卖。

Spring的IoC容器系列概况

就像商品需要有产品规格说明一样,同样,作为IoC容器,也需要为它的具体实现指定基本的功能规范,具体表现为BeanFactory,它体现了Spring为提供给用户使用IoC容器所设的基本功能规范。

如果使用的IoC容器看成一个水桶,那么BeanFactory就定义了水桶的基本功能,比如至少能装水,有个提手等。除了满足基本的功能,为了不同场合的需要,水桶厂商还为用户提供了其他多做多样的水桶产品,以满足不同用户的需求。但是不管是什么水桶,它们都有最基本的功能:装水。

BeanDefinition就像是水桶里的水

Spring IoC容器的设计

IoC容器的接口设计图

BeanFactory的应用场景

BeanFactory只是一个接口类,并没有给出容器的具体实现,而BeanFactory具有多种实现类,比如DefaultListableBeanFactory、XmlBeanFactory、ApplicationContext等都可以看成是容器附加了某种功能的具体实现,也就是容器体系中的具体容器产品。
BeanFactory接口设计了getBean方法,这个方法是使用IoC容器API的主要方法,通过这个方法,可以取得IoC容器中管理的Bean。
有了BeanFactory的定义,用户可以执行以下操作:

上一篇 下一篇

猜你喜欢

热点阅读