我正在按照教程学习Spring AOP。
在第Spring AOP capabilities and goals章中,它说:
Spring AOP目前仅支持方法执行(1)连接点
但在章节aop-pointcuts-designators中,它支持以下切入点表达式:
execution(2)
within
...
(1)和(2)两个执行标记的不同含义是什么?
答案 0 :(得分:0)
引用的含义是Spring只能拦截方法调用。 Aspect oriented programming通常具有更广泛的覆盖范围。 AOP连接点可以是任何代码段,方法调用,异常抛出,异常捕获,变量赋值等。然而,Spring的AOP受Java语言及其功能的限制。因此,它只能处理方法调用连接点。继续阅读Spring如何使用代理实现AOP功能。
上面的引用与切入点的类型完全无关。
execution
(2)是pointcut designator.
执行 - 对于匹配方法执行连接点,这是 使用Spring AOP时将使用的主要切入点指示符