通过实例解析spring环绕通知原理及用法

 更新时间:2020年10月28日 08:31:18   作者:Y_wee  
这篇文章主要介绍了通过实例解析spring环绕通知原理及用法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

环绕通知:

它是spring框架为我们提供的一种可以在代码中手动控制增强部分什么时候执行的方式。

问题:

当我们配置了环绕通知之后,增强的代码执行了,业务核心方法没有执行。

分析:

通过动态代理我们知道在invoke方法中,有明确调用业务核心方法:method.invoke()。

我们配置的环绕通知中,没有明确调用业务核心方法。

解决:

spring框架为我们提供了一个接口:ProceedingJoinPoint,它可以作为环绕通知的方法参数在环绕通知执行时,spring框架会为我们提供该接口的实现类对象,我们直接使用就行。该接口中有一个方法proceed(),此方法就相当于method.invoke()

代码:

  /**
   * 环绕通知
   */
  public void aroundInform(ProceedingJoinPoint pjp){
    System.out.println("前置通知");
    try {
      pjp.proceed();
      System.out.println("后置通知");
    } catch (Throwable throwable) {
      System.out.println("异常通知");
    }finally {
      System.out.println("最终通知");
    }
  }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 在java程序中使用protobuf

    在java程序中使用protobuf

    这篇文章主要介绍了protobuf的基本使用和同java结合的具体案例,感性兴趣的小伙伴可以一起来阅读下文
    2021-08-08
  • 深入理解 CAS 算法原理已经在jdk中的运用

    深入理解 CAS 算法原理已经在jdk中的运用

    这篇文章主要介绍了深入理解 CAS 算法原理已经在jdk中的运用,帮助大家更好的使用Java,感兴趣的朋友可以了解下
    2020-12-12
  • 使用Feign设置Token鉴权调用接口

    使用Feign设置Token鉴权调用接口

    这篇文章主要介绍了使用Feign设置Token鉴权调用接口,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • 深入解析spring AOP原理及源码

    深入解析spring AOP原理及源码

    这篇文章主要介绍了spring AOP原理及源码分析,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴,需要的朋友可以参考下
    2022-04-04
  • SpringBoot服务上实现接口限流的方法

    SpringBoot服务上实现接口限流的方法

    这篇文章主要介绍了SpringBoot服务上实现接口限流的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10
  • Java零基础也看得懂的单例模式与final及抽象类和接口详解

    Java零基础也看得懂的单例模式与final及抽象类和接口详解

    本文主要讲了单例模式中的饿汉式和懒汉式的区别,final的使用,抽象类的介绍以及接口的具体内容,感兴趣的朋友来看看吧
    2022-05-05
  • springboot集成schedule实现定时任务

    springboot集成schedule实现定时任务

    在项目开发过程中,我们经常需要执行具有周期性的任务。通过定时任务可以很好的帮助我们实现。本篇文章主要介绍了springboot集成schedule实现定时任务,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • SpringBoot多环境切换的配置实现

    SpringBoot多环境切换的配置实现

    在日常的开发中,一般都会分好几种环境,本文就来介绍一下SpringBoot多环境切换的配置实现,具有一定的参考价值,感兴趣的可以了解一下
    2024-03-03
  • Java读写Windows共享文件夹的方法实例

    Java读写Windows共享文件夹的方法实例

    本篇文章主要介绍了Java读写Windows共享文件夹的方法实例,具有一定的参考价值,有兴趣的同学可以了解一下。
    2016-11-11
  • Java实现电影院订票系统代码

    Java实现电影院订票系统代码

    这篇文章主要介绍了Java实现电影院订票系统代码,代码实现了界面类登录注册类,用户类等,具有一定参考价值,需要的朋友可以参考下。
    2017-11-11

最新评论