【ⓈSpring & Spring MVC】Spring AOP有哪些通知类型,它们的执行顺序是怎样的?
通知类型
在基于Spring AOP编程的过程中,基于AspectJ框架标准,spring中定义了五种类型的通知,它们分别是:
-
前置通知 (@Before) 。 -
返回通知 (@AfterReturning) 。 -
异常通知 (@AfterThrowing) 。 -
后置通知 (@After)。 -
环绕通知 (@Around) :(优先级最高)
通知执行顺序
将上面的所有通知类型写入同一个切面中,它的执行顺序为:
注:Spring版本为5.2.7.RELEASE---SpringBoot版本为2.2.8.RELEASE时 AOP执行顺序发生了改变。
Spring版本为5.2.7.RELEASE之前:
正常情况:
@Around 环绕通知前
@Before前置通知
result:5
@Around 环绕通知后
@After后置通知
@AfterReturning返回后通知
异常情况:
@Around 环绕通知前
@Before前置通知
@After后置通知
@AfterThrowing异常通知
Spring版本为5.2.7.RELEASE之后:
正常情况:
@Around 环绕通知前
@Before前置通知
result:5
@AfterReturning返回后通知
@After后置通知
@Around 环绕通知后
异常情况:
@Around 环绕通知前
@Before前置通知
@AfterThrowing异常通知
@After后置通知
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了