spring源码框架

1.bean定义来源:从xml读取,从注解读取,抽象出接口:BeanDefinationReader

2.bean容器:读取到bean的定义后,实例化bean,把bean信息存放到容器

通过如下代码进行实例化

Class<?> type = field.getType();
Object o = type.getConstructor().newInstance();

3.实例化以后不会直接放进容器,可以对实例化的bean进行增强

接口:BeanPostProccessor 

4.创建对象:工厂模式,抽象出工厂接口:BeanFactory,不同的实现去创建对象,bean工厂

高内聚,低耦合,扩展性

5.对对象进行增加:

6.BeanFactoryPostProccessor接口:创建完工厂之后,对工厂对象进行修改

7.设计模式:变化的抽接口,相同的抽模板,扩展性:每个节点抽接口,在不同的时间点,干不同的事情,在容器的不同阶段干点事

8.观察者模式,创建完对象之后调用观察者方法,去干一些事情

9.FactoryBean:工厂bean,,FactoryBean.getObject():生产某种对象的工厂实例

10.Enviroment:环境 xxx.properties,xxx.yaml,System.properties

猜你喜欢

转载自blog.csdn.net/ZhaoXia_hit/article/details/106324028
今日推荐