微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Spring中的五种通知

1 Before

2 After

3 AfterReturning

4AfterThrowing

5Around

@Component
@Aspect//生产=成代理对象
public class UserPuls {


    @Before(value = "execution(* com.qq.model.User.add(..))")
   public void before(){
        System.out.println("在add方法之前执行");
    }
    
    //表示在方法执行之后执行
    @After(value = "execution(* com.qq.model.User.add(..))")
    public void after(){
        System.out.println("add之后");
    }
        //表示在方法执行后返回结果之后才执行
        //后置通知 或者返会通知
    @AfterReturning(value = "execution(* com.qq.model.User.add(..))")
    public void AfterReturning(){
        System.out.println("AfterReturning");
    }
    
    //异常通知 在执行add方法时如果add有异常才会执行 有异常时环绕之后和AfterReturning都没有执行
    //最终通知
    @AfterThrowing(value = "execution(* com.qq.model.User.add(..))")
    public void AfterThrowing(){
        System.out.println("AfterThrowing");
    }
    
    //环绕通知
    @Around(value = "execution(* com.qq.model.User.add(..))")
    public void Around(ProceedingJoinPoint proceedingJoinPoint) throws Throwable{

        System.out.println("环绕之前");
        proceedingJoinPoint.proceed();
        System.out.println("环绕之后");
    }

}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐