spring架构源码:

xmlBeanDefinitionReader:

1.loadBeanDefinitions — —> doLoadBeanDefinitions ——> registerBeanDefinitions

 

DefaultBeanDefinitionDocumentReader

1.registerBeanDefinitions — —> doRegisterBeanDefinitions (AOP思想) ——> parseBeanDefinitions

— —> parseDefaultElement 

— —> processBeanDefinition: 

  BeanDefinitionReaderUtils.registerBeanDefinition(注册bean

 

DefaultListableBeanFactory:

1.registerBeanDefinition:由ConcurrentHashMap管理bean(创建,更新,销毁等等) — — 工厂模式

设计:BeanDefinition(抽象),BeanFactory等等构成

 

 

 

bean的创建是通过bean的解析,校验然后通过BeanDefinitionReaderUtils生成,并用BeanDefinition包装

spring会帮你管理bean以及bean的依赖

 

spring:事务管理,持久化等等

1.threadlocal解决带状态的bean问题(线程局部变量)

2.DI或IOC容器:通过工厂模式实现(反射),动态注入需要的依赖,管理bean的生命周期——解耦,提高并发性能

 

原文地址:https://www.cnblogs.com/monion/p/6253619.html