BeanPostProcessor是spring对外提供的bean的扩展机制,用于对bean进行扩展操作,常见的比如AOP就是采用BeanPostProcessor接口实现的。
模拟BeanPostProcessor接口
public interface BeanPostProcessor {
/**
* 初始化前执行该方法
* @param bean
* @param beanName
* @return
*/
Object postProcessBeforeInitialization(Object bean, String beanName);
/**
* 初始化后执行该方法
* @param bean
* @param beanName
* @return
*/
Object postProcessAfterInitialization(Object bean, String beanName);
}
定义ZhouyuBeanPostProcessor类实现BeanPostProcessor接口,
@Component
public class ZhouyuBeanPostProcessor implements BeanPostProcessor {
@Override
public Object postProcessBeforeInitialization(Object bean, String beanName) {
if ("userService".equals(beanName)) {
System.out.