📄 injectbeanselfprocessor.java
字号:
/**
* InjectBeanSelfProcessor.java 1.0 2007-8-6 上午01:33:26,创建 by yangfan
*/
package aop;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.BeanFactoryAware;
import org.springframework.beans.factory.config.BeanPostProcessor;
/**
*
* @author yangfan
* @version 1.0 2007-8-6 上午01:33:26,创建
*/
public class InjectBeanSelfProcessor implements BeanPostProcessor,BeanFactoryAware
{
private BeanFactory beanFactory;
public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException
{
// System.out.println("bbb::" + bean.getClass());
if(bean instanceof BeanSelfAware)
{
System.out.println("beanname==>" + beanName);
// Object proxyBean = beanFactory.getBean(beanName);
Object proxyBean = bean;
System.out.println("inject proxy," + proxyBean.getClass());
BeanSelfAware myBean = (BeanSelfAware)bean;
myBean.setSelf(proxyBean);
return myBean;
}
return bean;
}
public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException
{
return bean;
}
public void setBeanFactory(BeanFactory beanFactory) throws BeansException
{
this.beanFactory = beanFactory;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -