=====================================================================
//Advisor
< ... class="...Advisor">
<proterty name="advice">
....
</proterty>
<property name="pointcut">
....
</property>
</...>
//Intercerper
....
//advice
....
//代理工厂类中proxyFactory -------- org.springframework.aop.framework.ProxyFactoryBean
< ... name="interceptorNames">
Advice ----- 所有方法
Advisor ------ 根据 Advisor中的Pointcut
Advice
Pointcut
Intercepter ---- 所有方法
</...>
==================================================================
引入(添加方法)
org.springframework.aop.IntroductionInterceptor.
org.springframework.aop.support.DelegatingIntroductionInterceptor
代理工厂类中proxyFactory
<... name="proxyInterfaces">
<value>引入接口全名</value>
</...>
注意,自动代理工厂类中,没有proxyInterfaces属性,所以就不能用引入。
===================================================================
自动代理 ---- 没有proxyInterfaces属性,因此无法用于引入
<...class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<property name="beanNames">
....
</...>
<property name="interceptorNames">
</...>
</...>
//实现了BeanPostProcessor接口,会主动找类型为Advisor(包括Advice 和 Pointcut)的类,然后应用它们
<...class="org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator">
</...>
//Advisor
< ... class="...Advisor">
<proterty name="advice">
....
</proterty>
<property name="pointcut">
....
</property>
</...>
//Intercerper
....
//advice
....
//代理工厂类中proxyFactory -------- org.springframework.aop.framework.ProxyFactoryBean
< ... name="interceptorNames">
Advice ----- 所有方法
Advisor ------ 根据 Advisor中的Pointcut
Advice
Pointcut
Intercepter ---- 所有方法
</...>
==================================================================
引入(添加方法)
org.springframework.aop.IntroductionInterceptor.
org.springframework.aop.support.DelegatingIntroductionInterceptor
代理工厂类中proxyFactory
<... name="proxyInterfaces">
<value>引入接口全名</value>
</...>
注意,自动代理工厂类中,没有proxyInterfaces属性,所以就不能用引入。
===================================================================
自动代理 ---- 没有proxyInterfaces属性,因此无法用于引入
<...class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<property name="beanNames">
....
</...>
<property name="interceptorNames">
</...>
</...>
//实现了BeanPostProcessor接口,会主动找类型为Advisor(包括Advice 和 Pointcut)的类,然后应用它们
<...class="org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator">
</...>