Spring-ApplicationContext的介绍

  ApplicationContext和BeanFactory都是加载bean的,但是ApplicationContext包含BeanFactory的所有功能,并且提供更多的扩展功能;

  以下为ApplicationContext加载bean的工作流程:

   

 

    实例化bean的流程和xmlbeanfactory实例化流程一样,请参考:https://www.cnblogs.com/eason-ou/p/12052670.html

 

 

    这里对beanfactory‘做功能填充进行说明:

    1.增加SpEL语言的支持;例如#{}取属性值

    2.增加多属性编辑器的支持;例如对Date类型字段的转换

    3.增加对一些内置类的注入;例如一些实现了Aware接口的类,注入相应的资源,本质原理是使用BeanPostProcessor实现感知接口的处理。

    4.增加对AspectJ的支持

        

 

    这里对激活各种beanfactory处理器步骤作以下说明:

    BeanFactoryPostProcessor作用的是整个BeanFactory容器的修饰,BeanPostProcessor作用的是每个bean的修饰。

    

posted @ 2019-12-30 10:25  欧E  阅读(778)  评论(0编辑  收藏  举报