首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Spring的BeanFactoryPostProcessor

BeanFactoryPostProcessor是实现spring容器功能扩展的重要接口,例如修改bean属性值,实现bean动态代理等。...本文将通过简单的例子,展现BeanFactoryPostProcessor的扩展能力。  一、bean生命周期简述 Spring Bean生命周期比较复杂,在此简化一下,如下图。...总结上述过程, 我们可以得到以下执行顺序 :  BeanFactoryPostProcessor ---> 普通Bean构造方法 ---> 设置依赖或属性 ---> @PostConstruct ---...二、BeanFactoryPostProcessor  代码例子 BenzCar类(奔驰汽车类)有成员属性Engine(发动机), Engine是接口,无具体的实现类。...本代码例子,通过BeanFactoryPostProcessor ,FactoryBean,动态代理三项技术实现给BenzCar装配上Engine。

26520
您找到你想要的搜索结果了吗?
是的
没有找到

答读者问:BeanFactoryPostProcessor 似乎失效了?

有小伙伴在学习 Spring 源码视频的时候,看了松哥讲的 BeanFactoryPostProcessor 的用法之后,提出了这样一个问题: 我来跟大家补充一下这个问题的上下文: 我讲了 BeanFactoryPostProcessor...分析了其原理,也讲了具体的使用场景,一个典型的使用场景是我们在 XML 中定义 Bean 的时候,如果 Bean 的属性是使用了 properties 文件占位符如 ${db.username} 这种,那么在 BeanFactoryPostProcessor...然后我还顺手给大家举了一个例子,我在 XML 文件中定义 Bean 的时候,给 Bean 的某一个属性设置 value 为 ^username,然后在 BeanFactoryPostProcessor...在讲 BeanFactoryPostProcessor 之前,松哥已经和小伙伴们分析过 BeanDefinition 了,无论我们是通过 Java 代码还是通过 XML 文件定义的 Bean 对象,在解析称为...,换言之,@Bean 注解标记的方法是在 BeanFactoryPostProcessor 中被解析为 ConfigurationClassBeanDefinition 的。

24720
领券