各种通知类型存在优先级吗

来源:3-6 最终通知

咖啡灌不醉

2020-05-25 22:21:58

比如说如果我对一个切入点增加了前置和后置以及环绕通知,那么环绕的前后增强方法和前后置的增强方法哪个会先执行?另外如果环绕里我只写前置的后置的方法是不是也可以,相当于前置或后置通知

写回答

1回答

好帮手慕小班

2020-05-26

同学你好,1、首先各种通知类型中是可以存在优先级的,但是在同一个连接点上应用不止一个切面时, 除非明确指定, 否则它们的优先级是不确定的。

    而切面的优先级可以通过实现 Ordered 接口或利用 @Order 注解指定,比如:

http://img.mukewang.com/climg/5ecc8d4609a07c5106110202.jpg

http://img.mukewang.com/climg/5ecc8dc009f7721706200186.jpg

这只是一个小例子,同学参考着理解就可以。

    2、如果环绕里我只写前置的后置的方法

在环绕通知中,会在目标方法之前和目标方法之后,都会执行的一个通知,对应就是around方法,所以同学只写前置与后置的方法,是要怎么写呐?是只写对应的前置与后置之间的内容吗,这是可以的。

http://img.mukewang.com/climg/5ecc905509508c6112940537.jpg

如果同学想表达的不是这个意思,还麻烦同学具体描述一下。

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

0

0 学习 · 8263 问题

查看课程