spring应用手册-AOP(注解)-(2)-springAOP的几个关键概念

戴着假发的程序员出品 抖音ID:戴着假发的程序员 欢迎关注

springAOP的几个关键概念

spring应用手册(第三部分)

[1]Aspect(切面)

 Aspect 声明类似于 Java 中的类声明,在 Aspect 中会包含着一些 Pointcut 以及相应的 Advice。

[2]Joint point(连接点)

	表示在程序中明确定义的点,典型的包括方法调用,对类成员的访问以及异常处理程序块的执行等等,它自身还可以嵌套其它 joint point。

[3]Pointcut(切点)

	表示一组 joint point,这些 joint point 或是通过逻辑关系组合起来,或是通过通配、正则表达式等方式集中起来,它定义了相应的 Advice 将要发生的地方。

[5]Target(目标对象)

	织入 Advice 的目标对象.。

[6]Weaving(织入)

	将 Aspect 和其他对象连接起来, 并创建 Adviced object 的过程

看了上面的例子可能还是有点蒙,再看例子:我们要给所有的添加业务加入权限校验的业务处理。那么看下面的图理解上面的概念:
在这里插入图片描述
图有点乱,听我一个一个解释:

① Aspect中包含了 Pointcut和Advice。 Pointcut就是一个规定,或者说描述,说明我们要织入切面的具体规定。 Advice就是我们要执行的切面业务。

②Join point,在我们上面的例子中,J oint point就是我们要执行的所有的业务方法,也就是上面的两个业务对象中的四个方法。

③Target(目标对象),这个就不用多解释了。

④ 织入器,织入器会根据Pointcut的描述从Joint point中找到符合要求的织入点,将Advice织入到对应的位置。

说道这里希望你对上面的几个概念有所了解。

接下来我们来看看,Advice的几个类型:

[1] before advice(前置通知)

 在 join point 前被执行的 advice. 虽然 before advice 是在 join point 前被执行, 但是它并不能够阻止 join point 的执行, 除非发生了异常(即我们在 before advice 代码中, 不能人为地决定是否继续执行 join point 中的代码)

[2]after return advice (后置通知)

 在一个 join point 正常返回后执行的 advice

[3]after throwing advice(异常通知)

 当一个 join point 抛出异常后执行的 advice

[4]after(final) advice(最终通知)

 无论一个 join point 是正常退出还是发生了异常, 都会被执行的 advice.

[5]around advice(环绕通知)

在 join point 前和 joint point 退出后都执行的 advice. 这个是最常用的 advice.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

戴着假发的程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值