跳到主要内容

@AspectJ 支持

ChatGPT-4o 中英对照 @AspectJ support

@AspectJ 是指一种将切面声明为带有注解的常规 Java 类的风格。@AspectJ 风格是由 AspectJ 项目 作为 AspectJ 5 版本的一部分引入的。Spring 使用由 AspectJ 提供的库来解析和匹配切点,解释与 AspectJ 5 相同的注解。然而,AOP 运行时仍然是纯粹的 Spring AOP,并且不依赖于 AspectJ 编译器或织入器。

备注

使用 AspectJ 编译器和织入器可以使用完整的 AspectJ 语言,详细内容请参阅在 Spring 应用程序中使用 AspectJ

章节摘要

📄️ 声明一个切入点

切入点确定感兴趣的连接点,从而使我们能够控制通知何时运行。Spring AOP 仅支持 Spring bean 的方法执行连接点,因此你可以将切入点视为匹配 Spring bean 上方法的执行。切入点声明有两个部分:一个由名称和任何参数组成的签名,以及一个确定我们感兴趣的具体方法执行的切入点表达式。在 @AspectJ 注解风格的 AOP 中,切入点签名由常规方法定义提供,切入点表达式通过使用 @Pointcut 注解来指示(作为切入点签名的方法必须具有 void 返回类型)。