学习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来保持和维护。

相关推荐
superman超哥2 分钟前
仓颉Actor模型的实现机制深度解析
开发语言·后端·python·c#·仓颉
superman超哥3 分钟前
仓颉内存管理深度探索:引用计数的实现原理与实战
c语言·开发语言·c++·python·仓颉
资生算法程序员_畅想家_剑魔6 分钟前
Java常见技术分享-13-多线程安全-锁机制-底层核心实现机制
java·开发语言
萤丰信息9 分钟前
数智重构生态:智慧园区引领城市高质量发展新范式
java·大数据·人工智能·安全·智慧城市
悟空码字15 分钟前
MySQL分库分表,从“一室一厅”到“豪华别墅区”的数据库升级之旅
java·后端·mysql
shix .16 分钟前
spiderdemo 2-混淆
开发语言·python
Lisonseekpan16 分钟前
RBAC 基于角色的访问控制模型详解与实践指南
java·服务器·网络·后端·spring·log4j
lsx20240624 分钟前
Bootstrap 页面标题:设计指南与最佳实践
开发语言
黎雁·泠崖24 分钟前
C 语言结构体全解析:声明 + 内存对齐 + 位段 + 传参优化
c语言·开发语言
奔跑的小十一26 分钟前
ShardingSphere-JDBC 开发手册
java·数据库