详解Spring框架AOP中的AspectJ(实战篇)(二)

本文详细讲解了AspectJ中Aspect的概念,包括pointcut+advice的使用,以及before、after、around等通知类型。重点介绍了如何配置切点和自定义切面,并区分了after-returning和around对执行结果的影响。深入理解了AspectJ在通知时机上的控制。

通过<详解Spring框架AOP中的AspectJ(实战篇)(一)>的学习我们知道了AspectJ中的aspect是自定义通知,那么我们接下来引入Aspectj的aspect(切面)

pointcut + advice

aspect给我们提供了一些通知:通知是在什么时间做什么事情,做的事情是我们自己写的,但是aspect给我们提供了时间

而上面的advice主要是我们自己去写一个自定义的通知然后去实现了methodInterceptor的这样的接口

Aspect

这也是我们后面常规使用AspectJ的一种形式,那么我们介绍下aspect给我们提供的时间(相对于委托类方法的时间)

before、after、around、after-returning、after-throwing

 配置

这里要注意,切入点可以再外面切面外面配置也可以在切面里面配置,区别就是作用范围不一样,写在外面就是全局的作用范围,写在里面就是针对当前切面的作用范围

 接下来我们还需要一个自定义的切面,并把它注册到容器中

自定义切面

after-returning通知不去做执行委托类结果的修改,只是去获得,around通知才去做对结果的修改

如果抛出异常的话有如下图执行顺序

如果捕获委托类的执行异常,那么就不会执行到after-throwing

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值