Spring配置中,Bean实例化流程是怎样的?

2026-05-23 21:541阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计272个文字,预计阅读时间需要2分钟。

Spring配置中,Bean实例化流程是怎样的?

Spring 容器在初始化时,会将XML配置中的信息封装成 BeanDefinition 对象,所有 BeanDefinition 对象存储在名为 beanDefinitionMap 的 Map 集合中,Spring 框架遍历该 Map,通过反射创建 Bean。

Spring 容器在初始化时,会将xml配置的 的信息封装成一个 BeanDefinition 对象,

所有的 BeanDefinition 存储到一个名为 beanDefinitionMap 的Map集合中去,

Spring框架在对该Map进行遍历,使用反射创建Bean实例对象,

创建好的Bean对象存储在一个名为 singletonObjects 的Map集合中,

当调用getBean方法时,则最终从该Map集合中取出Bean实例对象返回。

Spring配置中,Bean实例化流程是怎样的?

简单记忆为:

(BeanDefinition --> beanDefinitionMap --> Bean --> singletonObjects )

如图

  • 加载xml配置文件,解析获取配置的每个的信息,封装成一个个的BeanDefinition对象;
  • 将BeanDefinition存储在一个名为beanDefinitionMap的Map<String,BeanDefinition> 中;
  • ApplicationContext底层遍历beanDefinitionMap,创建Bean实例对象;
  • 创建好的Bean实例对象,被存储到一个名为 singletonObjects的Map<String,Object> 中;
  • 当执行applicationContext.getBean(beanName)时,从singletionObjects去匹配Bean实例返回。

如图

2022.12.12 在宿舍办公,记此笔记。

本文共计272个文字,预计阅读时间需要2分钟。

Spring配置中,Bean实例化流程是怎样的?

Spring 容器在初始化时,会将XML配置中的信息封装成 BeanDefinition 对象,所有 BeanDefinition 对象存储在名为 beanDefinitionMap 的 Map 集合中,Spring 框架遍历该 Map,通过反射创建 Bean。

Spring 容器在初始化时,会将xml配置的 的信息封装成一个 BeanDefinition 对象,

所有的 BeanDefinition 存储到一个名为 beanDefinitionMap 的Map集合中去,

Spring框架在对该Map进行遍历,使用反射创建Bean实例对象,

创建好的Bean对象存储在一个名为 singletonObjects 的Map集合中,

当调用getBean方法时,则最终从该Map集合中取出Bean实例对象返回。

Spring配置中,Bean实例化流程是怎样的?

简单记忆为:

(BeanDefinition --> beanDefinitionMap --> Bean --> singletonObjects )

如图

  • 加载xml配置文件,解析获取配置的每个的信息,封装成一个个的BeanDefinition对象;
  • 将BeanDefinition存储在一个名为beanDefinitionMap的Map<String,BeanDefinition> 中;
  • ApplicationContext底层遍历beanDefinitionMap,创建Bean实例对象;
  • 创建好的Bean实例对象,被存储到一个名为 singletonObjects的Map<String,Object> 中;
  • 当执行applicationContext.getBean(beanName)时,从singletionObjects去匹配Bean实例返回。

如图

2022.12.12 在宿舍办公,记此笔记。