BeanDefinitionRegistryPostProcessor就是用来自定义bean的,并手动注入到Spring的容器里面,有时候觉得定义bean直接使用注解或者xml配置更方便,但是Spring既然提供,肯定是有道理,尝试一下。
这种使用一般是自己用来封装一些扩展插件的时候使用。
BeanDefinitionRegistryPostProcessor 就是一个定义很简单的接口,要想实现实现自定义bean只需要实现这个接口就行。
/**
* Extension to the standard {@link BeanFactoryPostProcessor} SPI, allowing for
* the registration of further bean definitions <i>before</i> regular
* BeanFactoryPostProcessor detection kicks in. In particular,
* BeanDefinitionRegistryPostProcessor may register further bean definitions
* which in turn define BeanFactoryPostProcessor instances.
*
* @author Juergen Hoeller
* @since 3.0.1
* @see org.springframework.context.annotation.ConfigurationClassPostProcessor
*/
public interface BeanDefinitionRegistryPostProcessor extends BeanFactoryPostProcessor {
/**
* Modify the application context's internal