后置处理Bean

BeanPostProcessor作用:对spring工厂所创建的对象,进行再加工。

AOP底层实现:

注意:BeanPostProcessor接口
xxx(){
}

后置处理Bean的运行原理分析

后置处理Bean_第1张图片

程序员实现BeanPostProcessor规定的接口中的方法:
Object postProcessBeforeInitiallization(Object bean String beanName)
作用:spring创建完对象,并进行注入后,可以运行Befor方法进行加工
获得spring创建好的对象:通过方法的参数
最终通过返回值交给spring框架。

Object postProcessAfterInitiallization(Object bean String beanName)
作用:soring执行完独享的初始化操作后,可以运行After方法进行加工
获得Spring创建好的对象:通过方法的参数
最终通过返回值交给spring框架

实战中:
很少处理spring的初始化操作:没必要区分Before After.只需要实现其中的一个After方法即可
注意:
 	postProcessBeforInitiallization()必须写:
 	return bean对象


BeanPostProcessor的开发步骤

1.类 实现BeanPostProcessor的开发步骤

public class MyBeanPostProcessor implements BeanPostProcessor{
		@override
		public object postProcessBeforeInitialization(Object bean,String beanName)throws BeanException{
		return bean;
}
		@override
		public object postProcessAfterInitialization(Objcet bean,String beanName)throws BeanException{
		Categroy categroy =(Categroy) bean;
		categroy.setName("wangze");
		return categroy;
}
}

2.spring的配置文件中进行配置

<bean id="myBeanPostProcessor"  class="xxx.MyBeanPostProcessor"/>

3.BeanPostProcessor细节

BeanPostProcessor会对spring工厂中所创建的对象进行加工。

你可能感兴趣的:(#,Spring,java,spring)