Aspectj 中同一方面内的建议顺序

The order of the advices inside the same aspect in Aspectj

当你有多个 arounds、befores 和 afters 并且它们都“指向”同一个切入点时,你如何确定同一方面内的建议顺序?我已经阅读了 aspectj 文档,但我就是看不懂。

您声称已阅读 AspectJ 手册。您为什么不直接 link 到您已阅读的相应页面?我的建议是阅读有关 advice precedence 的部分,该部分非常清晰准确,但简洁明了,可以在两分钟内阅读。当然,你应该 re-read 才能真正理解它,因为那里的信息非常压缩。不过,它应该可以回答您的所有问题。

您可以通过编写一个小示例程序 + 带有一堆不同建议的方面来测试您的理解,将连接点打印到控制台。然后在 (!) 运行 编写示例程序之前,您应该写下或者至少想象一下输出的样子。最后,运行程序并检查你的理解。

如果之后您仍然不理解或认为 AspectJ 手册不清楚,请编辑您的问题,post 完整(!)示例程序 + 方面 + 控制台日志并提出具体问题不明白的部分。

这是你最好的学习方式,也是你在这里提问的最佳方式。


更新: 我只记得 4 年前我回答了一个比这个问题更具体、更详细的问题,也以一个详细、全面的答案来表彰它,因为它值得一个.您可能想要 。它非常详细地解释了 AspectJ 手册以更抽象的方式解释的内容。