美文网首页
关于Spring AOP的配置与使用

关于Spring AOP的配置与使用

作者: Nojur | 来源:发表于2018-09-11 17:17 被阅读0次

    --前言:在以往所有项目中都使用过拦截器与AOP,但是从来只是复用别人的轮子,今天遇到一个重复请求接口的BUG,想着后端校验Token来判断是否重复请求,于是想自己造一个轮子实现。

    AOP

    AOP:面向切面编程,Spring的核心之一,什么是切面?好处是什么?我的理解就是在一个业务系统中选择一个切点进行切入,书写与业务无关的,但是可以给多种业务进行服务,调用。减少重复性的代码,可以被多个接口调用而不用在多个接口重复书写代码,降低系统的耦合度,并有利于未来的扩展与维护。这就是切面。

    如何进行实现呢?实现AOP有两种方式,一种是xml进行配置,一种是用注解。我们先看使用xml是如何配置的。

    1.我们先创建一个切面类:ExchangeAspect

    切面类

    在其中可以实现aop的多个通知类型

    1:before前置通知,在接口执行前,可获取request中的参数,无法终止调用接口。

    2:after后置通知,在接口执行后执行。

    3:afterReturn后置返回通知,在接口返回后执行。

    4:afterThrowing异常通知,在接口抛出异常执行。

    5:around环绕通知,可以在环绕通知里选择是否继续执行接口,也可对接口的返回值进行处理。

    2.在spring-mvc XML配置文件中配置切面切点等。

    定义切面类与切点。切点的实现方法 执行接口,发现切面已经成功运行,因为没有抛出异常所有没有异常通知

    使用注解进行AOP配置

    1.在切面类使用注解

    @Component、@Aspect这两个注解声明切面类

    2.定义切点

    注解@Pointcut对哪个接口进行切面。

    3.定义切面方法

    使用@before、@After等注解实现XML相同的功能

    4.XML

    最后还是要配置一点XML

    在XML中开启注解,并且自动扫描包

    实现AOP的两种方法就此完成了。

    相关文章

      网友评论

          本文标题:关于Spring AOP的配置与使用

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