关于AOP的一些概念

SPRING AOP的概念

AOP包含了一组自己特有的概念和术语,下列阐述一些AOP的核心概念

  • 连接点(jointpoint)
  • 通知(advice)
  • 方面(aspect)
  • 织入(weaving)
  • 目标(target)
  • 引入(introduction)

连接点(jointpoint)

一个连接点是一个程序执行过程中的特定点。典型的连接点包括对一个方法的调用,方法执行的过程本身,类的初始化,对象的实例化等。连接点是AOP的核心概念之一,它用来定义在程序的什么地方能通过AOP加入额外的逻辑。

通知(advice)

在某一特定的连接点处运行的代码称为“通知”。在spring中可以设置执行之前的通(before advice)或连接点之后执行的通知(after advice),还有环绕连接点的通知(around advice)在spring beans中配置aop:advisor。

切入点(pointcut)

切入点是用来定义某一个通知该何时执行的一组连接点。通过创建切入点,可以精确的控制程序中什么组件接到什么通知。一个典型的连接点是方法的调用,而一个典型的切入点就是对某一个类的所有方法的调用的集合。通常会通过组建复杂的切入点来控制通知什么时候被执行。

方面(aspect)

通知和切入点的组合就叫方面。这个组合定义了一段程序中应该包括的逻辑以及何时应该执行该逻辑。

织入(weaving)

织入是将方面真正加入程序代码的过程。对于编译时AOP方案而言,织入是在编译时完成的,通常作为编译过程中的一个额外步骤。对于运行时AOP方案,织入过程是在程序运行时动态执行的。

目标(target)

目标对象,通常也叫做通知对象,是一个在执行过程中受到某个AOP操作的修改对象。

引入(introduction)

引入可以在一个对象中加入新的方法或者字段,用来改变它的结构。可以使用引用来让任何对象实现一个特定接口,而不需要这个对象的类显示地实现这个接口。

猜你喜欢

转载自blog.csdn.net/Vi_sener/article/details/81489681