美文网首页- [ Spring ]
二,Spring AOP的五种通知

二,Spring AOP的五种通知

作者: 好多可乐 | 来源:发表于2021-02-05 22:15 被阅读0次

    一,五种通知类型:

    通知: 在什么时机执行切面的方法

    日常开发不常用,但是面试笔试会经常被问到


    五种通知类型
    • After Returning Advice和 After Throwing Advice是互斥的

    • Before Advice 和 After Advice:效果类似于try--catch--finally里的finally块,无论如何都会执行

    • 前4种做了解,知道触发时机即可,Around Advice做重点掌握


      在这里插入图片描述

      引介增强:做了解即可

    二,举例说明:

    1,后置通知(After Advice):

    缺点:无法获取到目标方法运行过程中产生的返回值或内部抛出的异常

    使用:

    1. 定义方法:


      在这里插入图片描述
    2. 配置xml


      在这里插入图片描述
    3. 调用(略)

    2,返回后通知(After returning Advice)

    • 和后置通知最大区别:可以接受目标方法的返回值

    • 后置通知和返回后通知的执行顺序是由xml里的书写顺序决定的,并没有默认执行顺序

    • 示例

    1. 定义方法:有2个返回值


      在这里插入图片描述
    2. 配置xml


      在这里插入图片描述
    3. 调用(略)

    3,异常通知(After Throwing Advice)

    • 同上,日志的产生顺序按配置顺序来
    1. 定义方法:(有2个参数)


      在这里插入图片描述
    2. xml文件进行配置


      3.
    3. 触发异常通知


      在这里插入图片描述
    4. 运行(略)

    4,环绕通知(重点!!)

    • 功能最强大的通知,推荐使用

    • 注意:环绕通知的方法,需要添加返回值Object(返回值为触发此环绕通知的方法的返回值)

    • proceed()方法-->ProceedingJoinPoin 参数调用此方法后,目标方法才会执行,否则目标方法永远不执行(控制目标方法的核心方法)、(返回值为目标方法的返回值)

    • 这里的异常做处理的原因:
      通常一个程序中,可能会布局多个通知,如果我们对这里的异常进行捕捉并处理后,后续通知程序无法捕捉此异常,有可能会出现意料不到的问题。

    1. 配置方法


      在这里插入图片描述
    2. 配置xml文件


      在这里插入图片描述

    相关文章

      网友评论

        本文标题:二,Spring AOP的五种通知

        本文链接:https://www.haomeiwen.com/subject/xyzgtltx.html