将 AOP 与 API 结合使用
Use AOP with APIs
我想在 Hadoop API 中使用方面的切入点 (Spring AOP)。我不想修改API,我只想拦截对API方法的调用。 Spring AOP 可以吗?
- 坏消息: 不,这不是因为 Spring AOP 是一个基于代理的 "AOP lite" 框架,它只适用于 Spring 组件。 Spring AOP 的语法是 AspectJ 的一个子集。
- 好消息:如果你使用完整的AspectJ而不是Spring AOP,你可以做你想做的,因为AspectJ独立于Spring并且可以与任何 Java class 一起使用(即使 classes 由其他 JVM 语言生成,例如 Groovy 或 Scala)。
我想在 Hadoop API 中使用方面的切入点 (Spring AOP)。我不想修改API,我只想拦截对API方法的调用。 Spring AOP 可以吗?
- 坏消息: 不,这不是因为 Spring AOP 是一个基于代理的 "AOP lite" 框架,它只适用于 Spring 组件。 Spring AOP 的语法是 AspectJ 的一个子集。
- 好消息:如果你使用完整的AspectJ而不是Spring AOP,你可以做你想做的,因为AspectJ独立于Spring并且可以与任何 Java class 一起使用(即使 classes 由其他 JVM 语言生成,例如 Groovy 或 Scala)。