zoukankan      html  css  js  c++  java
  • spring AOP 理解

    Spring Aspect Oriented Program

    一、实现方式种类:

      1. 基于jdk动态代理

      2. cglib

    二、两者区别:

      1. jdk动态代理需要实现 InvocationHandler

      2. cglib 无需实现接口,使用字节码技术去修改class文件使继承

    三、注解使用:

      1. Before("execution(*包名*)")

      前置建议,它是在执行一个业务方法之前插入的切面

      2. After

      当方法执行成功或者出现异常的时候都会执行切面

      3. AfterReturning

      代码正常结束前返回

      4. AfterThrowing

      代码出现异常时会执行

      5. Around

      = Before + AfterReturning

      它相当于一个AOP链,如果当前AOP执行后,就让下一个AOP执行

    四. execution语法介绍

    • execution(public * *(..))
    • execution(* set*(..))
    • execution(* com.xyz.service.AccountService.*(..))
    • execution(* com.xyz.service..*.*(..))
    • 上面只是举例说明了execution的语法,下面是一个标准的语法定义
    execution(modifiers-pattern? ret-type-pattern declaring-type-pattern? name-pattern(param-pattern) throws-pattern?)
  • 相关阅读:
    XJTUOJ13 (数论+FFT)
    ZOJ3956 ZJU2017校赛(dp)
    ZOJ3953 ZJU2017校赛(贪心)
    2014ACM/ICPC亚洲区西安站现场赛 F color(二项式反演)
    LOJ10129
    loj 10127最大数
    noip 选择客栈
    LOJ10121 与众不同
    CQOI 2006 简单题
    校门外的树
  • 原文地址:https://www.cnblogs.com/mobaids/p/12041530.html
Copyright © 2011-2022 走看看