zoukankan      html  css  js  c++  java
  • AOP

    AOP术语
    连接点:程序执行的某个特定的位置,如类的开始初始化前,类的初始化后,类的个某个方法
    调用前,调用后,方法抛互联网异常后。
    切点,连接点相当于数据库中的记录,而切点相当于查询条件。
    增强:是织入到目标类连接点上的一段程序代码。Spring所提供的增强接口都是带方位名的。
    BeforeAdvice、AfterReturnAdvice、ThrowsAdvice
    目标对象:增强逻辑的织入目标类。
    引介:引介是一种特殊的增强,它为类添加一些属怕和方法。这样即使一个业务类原本没有实
    现某个接口,通过AOP的引介功能,我们可以动态地为该业务类添加接口的实现逻辑,让业务类
    成为这个接口的实现类。
    织入:是将增强添加对目标具体连接点上的过程,AOP像一台织布机,将目标类、增强或者引介
    通过AOP这台织布机天衣无逢地编织到一起。
    AOP有三种织入方式:
    1)编译织入,这要求使用特殊的java编译器;
    2)类装载期织入,这要求使用特殊的类装载器;
    3)动态代现织入,在运行期为目标类添加增强生成子类的方式。
    Spring采用动态代理织入,而AspectJ采用编译期织入和类装载期织入。
    代理:一个类被AOP织入增强后,就产生出一个结果类,它是融合了原类和增强逻辑的代现类。根据
    不现的代理方式,代理类既可能是和原类具有相同的接口类,也可能就是原类的子类,所以我们可以
    采用调用原类相同的方式调用代理类。
    切面:切面由切点和增强(引介)组成,它既包括了横切逻辑的定义,也包括了连接点的定义,Spring
    AOP就是负责实施切面的框架,它将切面所定义的横切逻辑织入切面所指定的连接点中。
    Spring AOP使用了两种代理机制:
    一种是基于JDK的动态代理;另一种是基于CGLLIB的动态代理。之所以需要这两种代理机制, 很大程度
    是因为JDK本身只提供接口的代理,而不支持类的代理。

  • 相关阅读:
    【MySQL】【2】数字排序问题
    【MySQL】【1】表中存在重复记录,删除保留其中一条
    poj 1811 Prim test
    Yours 的博客开张啦!
    P1044
    P1103
    hustwinter1-B
    hustwinterC
    hustwinter1-A
    hdu 2138 How many prime numbers
  • 原文地址:https://www.cnblogs.com/wangyonglong/p/5178497.html
Copyright © 2011-2022 走看看