美文网首页我的文章-Spring
spring 中几个重要组件

spring 中几个重要组件

作者: 飞翔的鲲 | 来源:发表于2018-08-07 10:33 被阅读104次

BeanDefinition


这里创建bean工厂,同时生成所有注册类的BeanDefinition,后面通过扫描它来生成bean。


image.png

BeanFactoryPostProcessor


BeanDefinition可以在这里被修改,可能会有多个处理器,来修改BeanDefinition。
例如:PropertyPlaceholderConfigurer,处理站位符的bean,会扫描BeanDefinition,将占位符转换为对应的值。

image.png

BeanPostProcessor


这里会注册所有的实现了BeanPostProcessor接口的类,他们都是bean后处理器。他们会在下面初始化本的时候调用。

image.png

InitializingBean、FactoryBean、普通bean


这一步是最核心的,我们使用的bean都是在这被创建的(一些特殊的bean会在上面过程创建)。

  • InitializingBean
    实现此接口的bean会在初始化的时候调用 afterPropertiesSet 方法,一般需要初始化其他数据的时候会在这里写方法。

  • FactoryBean
    对bean new过程有特殊要求时会实现这个接口,调用 getObject 方法来 new 对象。不过调这个方法再new 的话速度比较慢,一般会实现InitializingBean,在初始化调用 afterPropertiesSet 的时候new 对象,最后 getObject 方法直接获取实例化的对象。

image.png

相关文章

网友评论

    本文标题:spring 中几个重要组件

    本文链接:https://www.haomeiwen.com/subject/ntrovftx.html