基于Schema配置的AOP

一、切面配置

1 <aop:config proxy-target-class="true">
2         <aop:pointcut id="pointcut" expression="target(NaiveWaiter) and execution(* greetTo(..))"/>
3         <aop:aspect ref="aspect">
4             <aop:before method="before" pointcut-ref="pointcut"/>
5         </aop:aspect>
6     </aop:config>
7 
8     <bean id="waiter" class="NaiveWaiter"/>
9     <bean id="aspect" class="PreGreetingAspect"/>

proxy-target-class 为true时使用CGLib代理 false时使用JDK. 

环绕通知类需要注意

1 import org.aspectj.lang.ProceedingJoinPoint;
2 public class SurGreetingAspect {
3     public Object sur(ProceedingJoinPoint pjd)throws Throwable {
4         System.out.println("----------------");
5         Object obj=pjd.proceed();
6 
7         return obj;
8     }
9 }
原文地址:https://www.cnblogs.com/WutingjiaWill/p/7780802.html