AOP2

Schema–based AOP

  • 基于 配置 的AOP的实现
  • Spring所有的切面和通知器都必须放在一个<aop:config>配置元素内部,可以配置包含多个<aop:config>元素,每个可以包含pointcut, advisor, aspect元素, 他们必须按顺序声明。
  • <aop:config>风格的配置大量使用了Spring的自动代理机制

在AOP中通知Advice 和一个切入点表达式关联
接下来就看一下切入点表达式
这里写图片描述

spring的AOP和spring的AspectJ都支持
Spring的AOP又能支持以下部分:
这里写图片描述

这里写图片描述

这里写图片描述

advice

  • 通知的设置
  • Before advice前置通知
  • 例子
  • After returning advice
  • 例子
  • After throwing advice使用throwing属性来指定可被传递的异常的参数名称。
  • 例子
  • After (finally)advice 方法结束后
  • 例子
    注意抛出异常和after-returning不会同时存在
  • Around advice 通知方法的第一个参数必须是ProceedingJoinPoint类型 ,执行之前,之后都可以用。
  • 例子
  • Advice parameters:传递参数在环绕通知中使用
  • 例子:http://www.imooc.com/video/4422

Introductions :允许一个切面声明一个实现指定接口的通知对象,并提供一个接口实现类来代表这些对象
详情如上地址

注意:基于配置的aspects只支持singleton模式

Advisors 切面通过bean表示,并必须实现某个advice接口,同时,advisor也可以很好的利用AspectJ的切入点表达式

  • Spring通过配置文件中<aop:advisor> 元素支持advisor实际使用,大多数情况下他会和transactional advice配合使用,可以用order属性定义advisor的顺序。
  • 通常用在调用次数的统计和控制的demo

    <context:component-scan base-package=”包名”>自动扫描包中的配置

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值