声明式增强

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

  实例:

    DoSomeService接口:

      

    DoSomeServiceImol实现类:

      

    BeforAdvice增强类:

      

    Application-statemenr.xml文件:

      

    测试:

      

    结果:

      

环绕增强 

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

  实例:

    DoSomeService接口:

      

    DoSomeServiceImpl实现类:

      

    BeforAdvice增强类:

      

    application-around.xml文件:

      

    测试:

      

    结果:  

      

异常增强 

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

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

  实例:

    DoSomeService接口:

      

    DoSomeServiceImpl实现类:

      

    BeforAdvice增强类:

      

    application-around.xml文件:

      

    测试:

      

    结果:

      

最终增强

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

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

  实例:

    DoSomeService接口:

      

    DoSomeServiceImpl实现类:

      

    BeforAdvice增强类:

      

    application-around.xml文件:

      

    测试:

      

    结果:

      

 

 posted on 2019-10-29 10:47  wnwn  阅读(112)  评论(0编辑  收藏  举报