Spring源码-IOC最简单分析
2020-03-24 12:01:59 0 举报
spring源码 ioc
作者其他创作
大纲/内容
Resource
web容器
加工后的BeanDefinition
对BeanDefinition进行加工处理
Bean缓存池
BeanWrapper
实例化
Bean实例
后续加工
3.
BeanDefinitionRegistry
Bean属性的设置提供了很多以Java反射机制操作Bean的方法
读取
BeanPostProcessor的postProcessBeforeInitialization()方法
PropertyEditorRegistry
spring容器
2.
web.xml
xml 注解Config
Spring源码最简单分析
SpringIOC初始化核心流程
InstantiationAwareBeanPostProcessor的postProcessAfterInstantiation()方法
Spring容器
放入容器
WebApplicationContext
实例化Bean
BeanNameAware的setBeanName()方法
将准备就绪的bean交给调用者
实例化Bean的前置处理器
使用到占位符的<bean>元素标签进行解析
所有属性编辑器的Bean
Spring组件按其所承担的角色可以划分为两类:原料组件、设备组件
Bean实例化
容器销毁
prototype
BeanPostProcessor的postProcessAfterInitialization方法
解析配置文件
xml配置
Bean定义注册表
BeanDefinition
BeanFactoryPostProcessor
通过getBean()获取对象
实例化Bean的后置处理器
ServletContext
Bean实现类
InstantiationAwareBeanPostProcessor的postProcessPropertyValues()方法
ResourceLoader
通过init-method属性配置初始化方法
保存
通过destroy-method配置销毁方法
InitializingBean的afterPropertiesSet
封装
加载
springmvc容器
singleton
InstantiationStrategy
读取Bean的配置信息
spring缓冲池中准备就绪的Bean
DispatcherServlet
容器启动过程
1.
对Bean进行封装
getBean()
BeanFactoryAware的setBeanFactory()方法
DisposableBean的destroy()方法
应用程序
bean生命周期
InstantiationAwareBeanPostProcessor的postProcessBeforeInstantiation()方法
核心要诀:配置 加载 解析 注册 实例化
BeanDefinitionReader
Bean的加载过程
BeanPostProcessor
设置属性值
0 条评论
下一页