5.1 AOP概念
spring aop核心概念图
7个核心概念
通知
定义:在特定连接点执行的代码就是通知。
内容:通知定义了切面是什么以及何时使用
5种通知类型
前置通知,后置通知,成功通知,异常通知,环绕通知
连接点
定义:应用程序执行期间能够插入一个切面的点。
典型事例有类初始化,对象实例化,字段初始化,方法调用,方法本身等。
spring只支持方法连接点,无法支持字段连接点,构造器连接点等等。
切入点(pointcut)
定义:如果通知定义了“什么”和“何时”。那么切点就定义了“何处”。切点会匹配通知所要织入的一个或者多个连接点。
作用:定义通知被应用的位置(在哪些连接点)
切面
定义:通知和切入点的集合-----它是什么,在何时何处完成功能。
织入
定义:将切面插入到应用程序代码的过程。
类型:编译织入,运行时织入(spring支持的方法),类加载时织入
(AspectJ都支持)
目标对象
定义:执行流由AOP进程修改的对象。也叫被通知对象(advised)
引入
定义:通过引入其他类的方法或字段来修改对象结构的过程.
作用:通过引入AOP可使任何对象实现特定的接口,而无需对象的类显示地实现该接口。