zoukankan      html  css  js  c++  java
  • AOP的专业术语

    1.连接点(Joinpoint)

    特定点是程序执行的某个特定位置,如类开始初始化前、类初始化后、类的某个方法调用前/后、方法抛出异常后。一个类或者一段程序代码拥有一些具有边界性质的特定点,这些特定点就称为 ”连接点“ 。

    Spring 仅支持方法的连接点,即仅能在方法调用前、方法调用后、方法抛出异常时、方法调用前后这些程序点织入增强。

    2.切点(Pointcut)

    每个程序类都有多个连接点,如一个类拥有两个方法,这两个方法都是连接点。而在众多个连接点中,如何定位某些感兴趣的连接点呢? AOP 就是用过 “切点” 定位特定连接点。

    打个比方,连接点相当于数据库中的记录,而切点就相当于的查询条件;一个切点可以匹配多个连接点。

    在 Spring 中,切点通过 org.springframework.aop.Pontcut 接口进行扫描,使用类和方法作为连接点的查询条件。

    3.增强(Advice)

    增强是织入目标类连接点上的一段程序代码。也就是在切点上增加的业务逻辑代码。

    4.目标对象(Target)

    增强逻辑的织入目标类。

    5.引介(Introduction)

    引介是一种特殊的增强,它为类添加一些属性和方法。

    6.织入(Weaving)

    织入是将增强添加到目标类的具体连接点上的过程。

    7.代理(Proxy)

    一个类被 AOP 织入增强后,就产生了一个结果类。它是融合了原类和增强逻辑的代理类。

    8.切面(Aspect)

    切面由切点和增强(引介)组成,它既包括横切逻辑的定义,也包括连接点的定义。

    Spring AOP 就是负责实施切面的框架,它将切面所定义的横切逻辑织入切面所指定连接点中。


    AOP 的工作重心在于如何将增强应用于目标对象的连接点上。这里包括两项工作:

    1. 如何通过切点和增强定位到连接点上;
    2. 如何在增强中编写切面的代码
  • 相关阅读:
    Oracle expdp impdp中 exclude/include 的使用
    Oracle表空间迁移Move Tablespace
    m2ewtp的作用
    有意思的排序算法合并排序
    有意思的排序算法插入排序
    equals与“==”之惑
    简化的打印语句静态导入
    有意思的排序算法堆排序
    博客开篇语
    MySQL 整理笔记 张大哥
  • 原文地址:https://www.cnblogs.com/luler/p/14987266.html
Copyright © 2011-2022 走看看