spring BeanPostProcessor

时间:2023-03-08 21:07:56

BeanPostProcessor

spring使用BeanPostProcessor接口来处理生命周期的回调

BeanPostProcessor接口定义的两个方法,分别在bean的(实例化配置和初始化一个bean之后)初始化方法(InitializingBean接口,或者init-method定义)执行的前后执行

在spring容器对bean实例化和设置依赖之后,其回调开始执行。

BeanFactoryPostProcessor

实现该接口,可以在spring的bean创建之前,修改bean的定义属性。也就是说,Spring允许BeanFactoryPostProcessor在容器实例化任何其它bean之前读取配置元数据,并可以根据需要进行修改,例如可以把bean的scope从singleton改为prototype,也可以把property的值给修改掉。

BeanFactoryPostProcessor是在spring容器加载了bean的定义文件之后,在bean实例化之前执行的。接口方法的入参是ConfigurrableListableBeanFactory,使用该参数,可以获取到相关bean的定义信息:

https://www.chkui.com/article/spring/spring_core_bean_post_processors

https://blog.csdn.net/windsunmoon/article/details/44283585

BeanFactoryPostProcessor与BeanPostProcessor使用
https://www.liangzl.com/get-article-detail-8613.html