首页 > 其他分享 >AOP的九点核心概念和作用

AOP的九点核心概念和作用

时间:2022-11-17 15:37:12浏览次数:42  
标签:连接点 对象 Spring AOP 九点 代理 切面 核心

AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。

 

AOP的作用:

  1. 面向切面编程(AOP)提供另外一种角度来思考程序结构,通过这种方式弥补了面向对象编程(OOP)的不足。
  2. 利用AOP对业务逻辑的各个部分进行隔离,降低业务逻辑的耦合性,提高程序的可重用型和开发效率。
  3. 主要用于对同一对象层次的公用行为建模

1. 横切关注点

对哪些方法进行拦截,拦截后怎么处理,这些关注点称之为横切关注点;

2. Aspect(切面)

通常是一个类,里面可以定义切入点和通知。

3. JoinPoint(连接点)

程序执行过程中明确的点,一般是方法的调用,被拦截到的点。因为Spring只支持方法类型的连接点,所以在Spring中连接点指的就是被拦截到的方法,实际上连接点还可以是字段或者构造器。

4. Advice(通知)

AOP在特定的切入点上执行的增强处理,有before(前置)、after(后置)、afterReturning(最终)、afterThrowing(异常)、around(环绕)。

5. Pointcut(切入点)

带有通知的连接点,在程序中主要体现在书写切入点表达式。

6. weave(织入)

将切面应用到目标对象并导致代理对象创建的过程。

7. introduction(引入)

在不修改代码的前提下,引入可以在运行期为类动态地增加一些方法或字段。

8. AOP代理(AOP Proxy)

AOP框架创建的对象,代理就是目标对象的加强。Spring中的AOP代理可以是JDK动态代理,也可以是CGLIB代理,前者基于接口,后者基于子类。

9. 目标对象(Target Object)

包含连接点的对象,也被称作被通知或被代理对象,POJO。

标签:连接点,对象,Spring,AOP,九点,代理,切面,核心
From: https://www.cnblogs.com/qian-fen/p/16899628.html

相关文章