AOP代理工厂方式实现增强

环绕增强 

  环绕增强相当于前置增强和后置增强的结合体,使用<aop:around>处理

  实例:

    DoSomeService接口:

      

    DoSomeServiceImpl实现类:

      

    BeforAdvice增强类:

      

    application-around.xml文件:

      

    测试:

      

声明式增强

  声明式增强:借助Spring IOC的机制,为ProxyFactory代理工厂的属性实现依赖注入,这样做的优点是可配置型高,易用性好。

  实例:

    DoSomeService接口:

      

    DoSomeServiceImol实现类:

      

    BeforAdvice增强类:

      

    Application-statemenr.xml文件:

      

    测试:

      

异常增强 

  异常增强处理,在目标方法抛出异常后织入;使用<aop:after-throwing>处理

  新增exception包,作为异常抛出增强的讲解 

  实例:

    DoSomeService接口:

      

    DoSomeServiceImpl实现类:

      

    BeforAdvice增强类:

      

    application-around.xml文件:

      

    测试:

      

最终增强

  无论方法是否抛出异常,都会在目标方法后做织入的增强处理,即该增强一定会执行,有点类似try-catch-finally块中的finally,一般用于释放资源。

       使用<aop:after>处理最终增强。 

  实例:

    DoSomeService接口:

      

    DoSomeServiceImpl实现类:

      

    BeforAdvice增强类:

      

    application-around.xml文件:

      

    测试:

      

原文地址:https://www.cnblogs.com/tinghao/p/11759178.html