您现在的位置是:首页 >技术教程 >(十)Spring源码阅读:finishBeanFactoryInitialization方法网站首页技术教程

(十)Spring源码阅读:finishBeanFactoryInitialization方法

循环网络不循环 2024-06-17 10:48:22
简介(十)Spring源码阅读:finishBeanFactoryInitialization方法

一、概述

该方法是实例化bean的主要方法,它实现的主要流程如下图所示。

 

 这是方法执行的主要流程图。

 具体执行流程如下图,我们将按照具体执行流程一个个介绍具体的方法。

二、主要方法

finishBeanFactoryInitialization内部调用了getBean方法。

 getBean方法最总调用了AbstractBeanFactory的doGetBean方法。

 

transformedBeanName对bean的名称进行了转化。

 

getMergedLocalBeanDefinition方法将从xml中读取并形成的GenericBeanDefinition与父类的BeanDefinition进行融合形成了RootBeanDefinition。

 之后调用createBean方法进行Bean的创建。

 resolveBeforeInstantiation方法实行了实例化前的前置增强。

 doCreateBean方法进行了bean的创建。

 populateBean进行了属性的填充

 populateBean还进行了实例化的后置增强。

 initializeBean进行了bean的初始化。

 initializeBean方法内部,调用了初始化前置增强和后置增强,并最终调用了初始化方法,完成了bean的创建流程。

 

参考文章:

https://www.cnblogs.com/lucidar/articles/17079257.html

spring源码系列-Bean的创建流程 - 简书

Spring官网阅读(四)BeanDefinition(上)(2)-阿里云开发者社区

mini-spring 源码阅读(一) bean的创建过程_weixin_46564779的博客-CSDN博客

Bean创建流程一(源码分析)_bean的创建流程_Mr_Liuxz的博客-CSDN博客

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。