Advice相关概念参考同一Apsect中不同类型Advice执行顺序
优先级说明:
- 对于进入Join Point的Advice而言(比如: @Around 前置处理,@Before),优先级越高,越先执行;
- 对于从Join Point出来的Advice而言(比如: @Around 后置处理,@After),优先级越高,越后执行;
- 优先级从高到低依次为: @Around, @Before,@After,@AfterReturning,@AfterThrowing;
PS:不同Aspect中Advice执行顺序
如果在同一个切面(Apsect)中定义了两个同类型的Advice(比如定义两个@Before), 对于某个Join Point而言这两个Advice都匹配,那么这两个Advice执行的先后顺序是无法确定的。
说明:实验二: Aspect1为低优先级,Aspect2为高优先级
高优先级的Aspect1中的@Around前置处理和@Before先于低优先级的Aspect2执行,而@AfterReturning,@After和@Around后置处理,则低优先级的Aspect2先执行。
本文主要目的是记录学习过程,加深对知识点理解; 如有行文有误,望指正。
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) | Powered by Discuz! X3.4 |