• spring AOP理解和相关术语


    一、AOP理解

    AOP:横向抽取机制,底层使用代理方式实现。

    示例:

    现有LogDAO接口以及实现Log接口的Log类。类有add的方法,现在要打印add方法的开始时间和结束时间。(即增强Log的add方法)

    1.LogDao接口

    2.Log类(委托类,实现具体的逻辑)

    3.LogProxy类(静态代理类)

    4.LogStaticFactory类(代理工厂)

    通过代理工厂,用户在生成LogDao实例时就不用考虑用Log类还是LogPorxy类

    5.TestAop类(测试类)和结果

    通过创建代理类成功实现了对Log类的add方法增强,但需注意的是代理类必须实现Log类中所有的方法,这样当Log类方法特别多的时候,或者Log类中方法改变的时候就会使代码维护变得困难。这样便需要动态代理。

    二、AOP操作术语

    1.连接点:在类中可以被增强的方法称为链接点。

    2.切入点:在实际操作中被增强的方法称为切入点。

    3.通知/增强:对方法添加新功能,这些新功能叫做增强。

      (1)前置增强:在方法之前执行。

      (2)后置增强:在方法之后执行。

      (3)异常通知:在发生异常时执行。

      (4)最终通知:在后置之后执行。

      (5)环绕通知:既在方法前执行,也在方法后执行。

    4.切面:把增强具体应用到切入点的过程称为切点。

  • 相关阅读:
    在Linux下修改图形界面的分辨率
    Linux 常用命令
    读ActiveAndroid源码(三)
    读ActiveAndroid源码(二)
    读ActiveAndroid源码(一)
    Android中图片的文件储存
    构造器内部的多态方法的行为
    摸触事件分发的小实践——关闭View滑动
    【Java】 关于类的初始化
    git配置http代理
  • 原文地址:https://www.cnblogs.com/lolybj/p/6374824.html
Copyright © 2020-2023  润新知