前四个名词常用,后三个不常用。
(1)连接点(JoinPoint):在程序运行过程中执行的方法,一个连接点总代表一个方法的执行。
(2)切点(Pointcut):指要对哪些连接点进行拦截,也就是要被增强的方法。
(3)通知(Advice):指拦截后要做的事情,也就是切点被拦截后执行的方法。5 种通知类型:前置(Before)、后置(After returning)、异常(After throwing)、最终(After)、环绕通知(Around)。
(4)切面(Aspect):切点 + 通知称为切面,把被抽取出来的公共模块去横切多个对象,切面可以由多个切点和通知组合。切面可以在类上使用 @AspectJ 注解来实现。
(5)目标对象(Target):包含连接点的对象,也称为被通知的对象,SpringAOP 是通过动态代理实现的,所以这个对象是一个代理对象。
(6)代理(Proxy):代理对象
(7)织入(Weaving):生成代理对象的过程