码迷,mamicode.com
首页 > 编程语言 > 详细

Spring系列之:AOP

时间:2019-05-07 21:15:46      阅读:160      评论:0      收藏:0      [点我收藏+]

标签:ice   模块   对象   bsp   继承   返回   方法   int   final   

一,相关名词

切面(Aspect):一个横切功能的模块化,这个功能可能会横切多个对象(业务),比如:aMethod()方法就是一个"切面",它横切到多个业务中

切入点(Pointcut):可以插入 "横切逻辑(如aMethod())"的方法。比如:"调用add()"就是一个切点。

通知:

前置通知(Before Advice):在切入点add()方法执行之前,插入的通知。

后置通知(After Returning Advice):在切入点add()方法执行完毕之后,插入的通知

异常通知(After Throwing Advice):在切入点add()方法抛出异常时,插入的通知

最终通知(After FinallyAdvice):当切入点add()方法执行完毕时,插入的通知(不论是正常返回还是异常退出)

环绕通知(Around Advice):可以贯穿切入点add()方法执行的整个过程。

二,通知

1,我们想把一个普通的类变成一个特定功能的类。有三种方法:

继承类

实现接口

加注解

配置

2,把一个普通的类 变成 "通知",

2.1,通过让类实现接口来实现

通知类型          需要实现的接口         接口中的方法       执行时机

前置通知  org.springframework.aop.MethodBeforeAdvice    before()       目标方法执行前      

后置通知  org.springframework.aop.AfterReturningAdvice   afterReturning()    目标方法执行后

异常通知  org.springframework.aop.ThrowsAdvice        无          目标方法发生异常时

环绕通知  org.aopalliance.intercept.MethodInterceptor     invoke()    拦截对目标方法调用,即调用目标方法的整个过程

 

Spring系列之:AOP

标签:ice   模块   对象   bsp   继承   返回   方法   int   final   

原文地址:https://www.cnblogs.com/inspred/p/10827967.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!