Spring Aop

AOP

AOP编程,基于动态代理将正常业务流中通用,模板型的功能(日志记录,数据库库事务)分离出来(当作过滤器)在运行时织入到正常业务流的的过程。这样有利于代码复用以及更加注重业务逻辑的开发。

Spring AOP

AOP概念不是Spring独有的,Spring只是支持方法层面上的AOP.Spring利用JDK动态代理以及CGLIB来创建动态代理对象来实现AOP。

AOP中的概念

切面:包括切点和通知,可以理解为正常业务流的运行环境。

通知:切面中具体执行的部分--从正常业务流中抽象出来的部分

切点:表示什么时候把通知织入到业务流中去

连接点:表示在哪织入通知,Spring中是某个方法

织入:创建动态代理对象并将通知织入到相应的流程当中去。

引入:给类引入新方法(增强类实现额外的接口)

通知的分类

  • 前置通知@Before:业务流程之前运行
  • 后置通知@After:业务流程之后运行(无论业务流程是否正常结束,是否抛出异常,若有环绕通知则在环绕通知后运行)
  • 返回通知@AfterReturning:业务流程正常结束之后运行(若有后置通知则后置通知后运行)
  • 异常通知@AfterThrowing:业务流抛出异常时运行
  • 环绕通知@Around:在业务流运行之前运行,若没有调度业务流则直接跳过业务流。若调度业务流则运行完业务流之后会运行环绕中剩下的部分,再运行后置通知

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值