ApplicationContextInitializer和BeanFactoryPostProcessor有什么区别?什么时候实现什么接口?
最佳答案
我对它们的区别的理解主要是在调用其回调方法的时候。ApplicationContextInitializer
允许您在加载持久性bean定义之前进行其他初始化(例如,您的application-context.xml
)。当您要在加载定义之前选择配置文件时很有用。
加载bean定义但未创建bean本身时,调用BeanFactoryPostProcessor
。 PropertyPlaceholderConfigurer
是一个很好的例子,它用具体的值代替了占位符。
您可以深入了解相关文档。ApplicationContextInitializer
和BeanFactoryPostProcessor