0
点赞
收藏
分享

微信扫一扫

基于xml的Spring配置二(Bean 实例化的基本流程)

Spring 容器在初始化时,会将xml配置的 的信息封装成一个 BeanDefinition 对象,所有的 BeanDefinition 存储到一个名为 beanDefinitionMap 的Map集合中去,Spring框架在对该Map进行遍历,使用反射创建Bean实例对象,创建好的Bean对象存储在一个名为 singletonObjects 的Map集合中,当调用getBean方法时,则最终从该Map集合中取出Bean实例对象返回。(BeanDefinition --> beanDefinitionMap --> Bean --> singletonObjects )


基于xml的Spring配置二(Bean 实例化的基本流程)_spring

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


基于xml的Spring配置二(Bean 实例化的基本流程)_spring_02

举报

相关推荐

0 条评论