方法调用和方法执行-Spring AOP

时间:2018-11-06 18:11:06

标签: spring-aop

我正在学习Spring AOP,我看到这张表与Spring AOP和AspectJ之间的区别。

Joinpoint            Spring AOP Supported   AspectJ Supported
Method Call               No                  Yes
Method Execution          Yes                 Yes

方法调用和方法执行之间有什么区别?

1 个答案:

答案 0 :(得分:0)

有不同类型的连接点:

  • 方法调用
  • 方法执行
  • 对象创建
  • 构造函数执行
  • 字段引用

Spring AOP仅支持公共方法调用,否则您将需要AspectJ。 方法调用(方法调用)可让您在调用之前将其定位为实际执行之前。因此,不能将联接点放在正在执行的方法的中间-只能在Spring AOP中的之前,之后或周围。

AspectJ允许更多可能性,但也被视为更复杂,但是由于编译时编织(Spring AOP是运行时),因此在性能方面更为有效。因此,如果您需要更多的功能/更好的性能,那么使用AspectJ会更好,但是这种情况很少见,因为Spring AOP在大多数情况下就足够了。

如果您想了解更多信息,这里是Spring AOP的概述。 https://javamondays.com/spring-aop-beginners-guide/

相关问题