AOP 工作流程

  • AOP 概念:AOP

一、工作流程

  1. Spring 容器启动
  2. 读取所有切面配置中的切入点
  3. 初始化 bean 判定 bean 对应类中的方法是否匹配到任意切入点
    1. 匹配失败,创建原始对象
    2. 匹配成功,创建原始对象(目标对象)的代理对象
  4. 获取 bean 执行方法
    1. 获取的bean不是代理对象,调用方法并执行,完成操作
    2. 获取的bean是代理对象,根据代理对象的运行模式运行原始方法与增强内容,完成操作

二、概念

  • 目标对象(Target object:): 被一个或多个方面通知的对象。也被称为 “通知对象”。由于Spring AOP是通过使用运行时代理来实现的,所以这个对象总是一个被代理的对象。

    • 原始功能去掉共性功能对应的类产生的对象,这种对象无法直接完成最终工作。
  • AOP代理(AOP proxy): 由AOP框架创建的一个对象,以实现切面能力(通知方法执行等)。在Spring框架中,AOP代理是一个JDK动态代理或CGLIB代理。

    • 目标对象无法直接完成工作,需要对齐进行功能功能回填,通过原始对象的代理对象实现。

AOP 工作流程
https://blog.pangcy.cn/2023/04/09/后端编程相关/java/spring/AOP 工作流程/
作者
子洋
发布于
2023年4月9日
许可协议