• 【Spring实战4】08---面向切面AOP


    ---恢复内容开始---

    在软件开发中,散布于应用中多处的功能成为横切关注点,常见的场景如日志,与业务逻辑分离,但是却直接嵌入业务逻辑。

    以电力公司统计定量为例

    AOP术语

    通知advice

      抄表员必须在家门口的电表上记录电量向电力公司报告,那么他们必须有一份住户清单,汇报信息,记录电量,其中记录电量才是他的主要工作,那么通常把它必须要完成的工作称为通知

      通知定义了切面是什么以及何时使用,除了描述切面要完成的工作,通知还解决了何时执行的工作,如在某个方法被调用之前?之后?之前和之后?还是在异样时调用?

      类型:

        前置通知:before  在目标方法被调用之前通知

               后置 After 在方法调用之后通知

        返回 after-returning  在方法执行成功后通知

        异常 after-throwing 在方法异常后通知

        环绕 around 通知了被通知的方法,调用之前与之后的行为

    连接点join point

      一个区域可能有多个住户,可能还有多个区域,各种类型的电表,但是他们的目标是所安装的电表,可以理解这里的电表为通知的连接点。

    切点pointcut

       每个抄表员被分别指定到某一区域的住户,如果通知定义了切面的“什么”和“何时”,那么切点就定义了何处,切点定义了会匹配通知所有织入的一个或者多个连接点,

    切面aspect

      切面就是通知和切点的结合。    抄表员要具体到那个区域抄谁家的电表

    引入

      引入允许我们向现有的类增加新方法或者属性

    织入

         把切面应用到目标对象并创建新的代理对象的过程

    Spring提供了4种类型的AOP支持

      基于代理的经典Spring AOP;

      纯POJO切面

      @AspectJ注解驱动的切面

      注入式AspectJ切面

    面向切面主要引用于程序中的日志、安全和事务管理模块。

    ---恢复内容结束---

  • 相关阅读:
    时间已经到了再一次发了博客
    java排错
    毕业设计
    做生意这件事
    性能优化的原理和理解
    【Linux】-NO.87.Assembly.1.滴水逆向.1.001-【介绍】-
    【Java】NO.80.Note.1.Java.1.001-【Java 各种特性概念】
    【Common】NO.81.Note.1.Common.1.001-【各种英文符号的表示及念法】
    【UML】NO.55.EBook.8.UML.3.001-【UML和模式应用 第3版】
    【UML】NO.54.EBook.6.UML.2.002-【Thinking In UML 大象 第二版】- UML 核心元素
  • 原文地址:https://www.cnblogs.com/hylinux/p/6039818.html
Copyright © 2020-2023  润新知