版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/weixin_43014205/article/details/86541026
第一步:在配置文件中开启AOP注解
<!--配置开启aop注解-->
<aop:aspectj-autoproxy/>
第二步,在切面类上配置切面标签,
并在切面类中的方法上贴上通知标签
注解AOP通知类型
(1)@Before 前置通知
@Before(value = "execution(* com.itlike.demo1.GoodsDaoImpl.save(..))")
public void log(){
System.out.println("日志输出");
}
(2)@AfterReturning 后置通知
(2.1)没有返回值
(2.2)有返回值
@Aspect
public class GoodsDaoAspect {
@AfterReturning(value = "execution(* com.itlike.demo1.GoodsDaoImpl.update(..)))",returning = "res")
public void afterreturning(Object res){
System.out.println("后置通知"+res);
}
}
(3)@Around 环绕通知
@Aspect
public class GoodsDaoAspect {
@Around(value = "execution(* com.itlike.demo1.GoodsDaoImpl.delete(..))")
public Object around(ProceedingJoinPoint joinPoint) throws Throwable {
System.out.println("delete之前");
Object proceed = joinPoint.proceed();
System.out.println("delete之后");
return proceed;
}
}
(4)@AfterThrowing 异常抛出通知
(5)@After 最终通知