前面几篇文章我们聊过IOC以及Spring IOC ,其中Spring IOC 的一个实现方式包含 依赖查找 和依赖注入。本文我们进一步详细聊一下 SpringIOC的依赖查找,及其对应的方式 以及安全性,内置依赖等。
查找类型
1单元类型
2 集合类型依赖查找:如何查找已知类型多个Bean集合
getObjectType 提前把一些类进行初始化 导致Bean 初始化不完全,位置错误。
先根据名称查找更好。
ListableBean Factory 是针对于某一个类型去查找一个集合列表。集合列表可能有两种情况,1)查询这个bean的名称 2) 查询Bean 的实例
推荐使用Bean 的名称去判断这个Bean 是否存在。当然重要的方式是判断BeanDefinition 是否存在。这种方式会避免提早初始化Bean
3 层次性依赖查找
HierarchicalBeanFactory
与双亲委派非常相似,如果有层次性的话,就会一直往上递进查找,直到找到。
注:本文大部分取自于极客视频并进行加工。大家感兴趣的可以直接移步极课 看小马哥讲Spring核心编程思想~