Spring 的 BeanPostProcessor
2006-02-06 15:46
369 查看
主要作用是在 bean 的生命周期加入自己的代码,注意这个代码是多 context 里面所有的 bean 生效,
但可以根据beanName来过滤只对自己需要的bean实现额外的初始化或初始化后的操作。
postProcessAfterInitialization(Object bean, String beanName);
postProcessBeforeInitialization(Object bean, String beanName);
Spring in Action 2.4.1 也讲了,看一下就明白了。
跟BeanPostProcessor有关的是使用Auto-Proxy Creator来配置AOP
<!-- Create the proxy bean that returns AOP'd varieties of our controller -->
<bean name="proxyCreator" class="org.springframework.aop.autoproxy.BeanNameAutoProxyCreator">
<property name="beanNames" value="*Controller"/>
<property name="interceptorNames">
<list>
<value>beforeAdviceA</value>
<value>interceptorA</value>
</list>
</property>
</bean>
<bean name="beforeAdvisor" class="com.javalobby.tnt.spring.aop.BeforMethodAdvisor"/>
<bean name="afterAdvisor" class="com.javalobby.tnt.spring.aop.AfterMethodAdvisor" />
现在看来Auto-Proxy Creator只是一个简化配置
Auto-Proxy Creator Resource:
http://www.javalobby.org/java/forums/t45333.html
但可以根据beanName来过滤只对自己需要的bean实现额外的初始化或初始化后的操作。
postProcessAfterInitialization(Object bean, String beanName);
postProcessBeforeInitialization(Object bean, String beanName);
Spring in Action 2.4.1 也讲了,看一下就明白了。
跟BeanPostProcessor有关的是使用Auto-Proxy Creator来配置AOP
<!-- Create the proxy bean that returns AOP'd varieties of our controller -->
<bean name="proxyCreator" class="org.springframework.aop.autoproxy.BeanNameAutoProxyCreator">
<property name="beanNames" value="*Controller"/>
<property name="interceptorNames">
<list>
<value>beforeAdviceA</value>
<value>interceptorA</value>
</list>
</property>
</bean>
<bean name="beforeAdvisor" class="com.javalobby.tnt.spring.aop.BeforMethodAdvisor"/>
<bean name="afterAdvisor" class="com.javalobby.tnt.spring.aop.AfterMethodAdvisor" />
现在看来Auto-Proxy Creator只是一个简化配置
Auto-Proxy Creator Resource:
http://www.javalobby.org/java/forums/t45333.html
相关文章推荐
- Spring探秘|妙用BeanPostProcessor
- Spring源码解析笔记9——容器的功能扩展BeanFactory的后处理(BeanFactoryPostProcessor)
- spring BeanPostProcessor
- spring学习5- Container Extension Points(BeanPostProcessor 与BeanFactoryPostProcessor)
- Spring中BeanPostProcessor与InitializingBean接口的关系与应用
- spring 后置处理器BeanFactoryPostProcessor和BeanPostProcessor的用法和区别
- Spring中BeanPostProcessor
- Spring的BeanFactoryPostProcessor
- spring beanFactoryPostProcessor beanPostProcessor
- Spring中BeanPostProcessor
- Spring 的 BeanPostProcessor接口实现
- Spring的BeanFactoryPostProcessor和BeanPostProcessor
- Spring BeanFactoryPostProcessor容器后处理器执行时机
- Caused by: java.lang.ClassNotFoundException: org.apache.shiro.spring.LifecycleBeanPostProcessor
- Spring源代码分析(6)---BeanPostProcessor(半路杀出个程咬金)
- 【Spring学习23】容器扩展点:后置处理器BeanPostProcessor
- Spring源码解析-AutowiredAnnotationBeanPostProcessor
- Spring BeanPostProcessor与动态加载数据源配置
- Spring BeanPostProcessor&BeanFactoryPostPrcoessor
- Spring BeanPostProcessor接口 (在Spring实例化bean的前后执行一些附加操作) .