学习java第四十天

类图中各个类的作用:

AliasRegistry:定义对alias的简单增删改等操作

SimpleAliasRegistry:主要使用map作为alias的缓存,并对接口AliasRegistry进行实现

SingletonBeanRegistry:定义对单例的注册及获取

BeanFactory:定义获取bean及bean的各种属性

DefaultSingletonBeanRegistry:对接口SingletonBeanRegistry各函数的实现

HierarchicalBeanFactory:继承BeanFactory,也就是在BeanFactory定义的功能的基础上增加了对parentFactory的支持

BeanDefinitionRegistry:定义对BeanDefinition的各种增删改操作

FactoryBeanRegistrySupport:在DefaultSingletonBeanRegistry基础上增加了对FactoryBean的特殊处理功能

ConfigurableBeanFactory:提供配置Factory的各种方法

ListableBeanFactory:根据各种条件获取bean的配置清单

AbstractBeanFactory:综合FactoryBeanRegistrySupport和ConfigurationBeanFactory的功能

AutowireCapableBeanFactory:提供创建bean、自动注入、初始化以及应用bean的后处理器

AbstractAutowireCapableBeanFactory:综合AbstractBeanFactory并对接口AutowireCapableBeanFactory进行实现

ConfigurableListableBeanFactory:BeanFactory配置清单,指定忽略类型及接口等

DefaultListableBeanFactory:综合上面所有功能,主要是对Bean注册后的处理

BeanDefinition的载入和解析

对IoC容器来说,这个载入过程,相当于把定义的BeanDefinition在IoC容器中转化成一个Spring内部表示的数据结构的过程。IoC容器对Bean的管理和依赖注入功能的实现,是通过对其持有的BeanDefinition进行各种相关操作来完成的。这些BeanDefinition数据在IoC容器中通过一个HashMap来保持和维护。

相关推荐
代码村新手2 分钟前
C++-类和对象(中)
java·开发语言·c++
renhongxia117 分钟前
学习基于数字孪生的工艺参数优化
学习
葵花楹18 分钟前
【JAVA课设】【游戏社交系统】
java·开发语言·游戏
kylezhao201921 分钟前
C# 文件的输入与输出(I/O)详解
java·算法·c#
gjf05_0525 分钟前
人该怎样活着呢?版本68.6
学习
千层冷面26 分钟前
数据库分库分表
java·数据库·mysql·oracle
赵谨言29 分钟前
Python串口的三相交流电机控制系统研究
大数据·开发语言·经验分享·python
GISer_Jing35 分钟前
AI Agent 智能体的“深度思考”与“安全防线”
人工智能·学习·安全·aigc
民乐团扒谱机1 小时前
【微实验】数模美赛备赛:多目标优化求解实战(MATLAB实现,以流水车间调度为例)
开发语言·数学建模·matlab·甘特图·遗传算法·多目标优化·优化模型
努力的小陈^O^1 小时前
问题:Spring循环依赖问题排查与解决
java·开发语言·前端