本文介绍: 在 spring boot 项目中,使用 aop 增强,不仅可以很优雅地扩展功能,还可以让一写多用,避免写重复代码,例如:记录接口耗时,记录接口日志,接口权限,等等。然而,当我们在一个接口中使用多个 aop,时,就需要注意他们的执行顺序了。如果不把这个问题搞明白,那我们的程序就不可控,这是不允许的,这就是我们今天要讨论的问题。因为我们用的是 Around,先进入Aop1,再进入到aop2,然后执行api,执行完以后,再返回到 aop2,最后返回aop1。这样,我们也就通过使用包扫描的方式实现了 AOP。
Spring Boot Aop 执行顺序
1. 概述
在 spring boot 项目中,使用 aop 增强,不仅可以很优雅地扩展功能,还可以让一写多用,避免写重复代码,例如:记录接口耗时,记录接口日志,接口权限,等等。所以,在项目中学习并使用 aop ,是十分必要的。然而,当我们在一个接口中使用多个 aop,时,就需要注意他们的执行顺序了。那么,它们的执行顺序是怎样的呢?如果不把这个问题搞明白,那我们的程序就不可控,这是不允许的,这就是我们今天要讨论的问题。
2. 实现 AOP
2.1 通过注解实现 AOP
MyAop:
MyAspect:
SampleController#myApi:
这样,我们就通过使用注解的方式实现了 AOP 。
2.2 通过扫描包
比如,我们有这样一个接口 SampleController#myApi2:
3. 多个 AOP
3.1 分析
3.2 代码实现
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。