execution表达式_AOP切入点表达式

切入点表达式

1 作用

通过表达式的方式定位一个或多个具体的连接点。

2 语法细节

  • 切入点表达式的语法格式
execution([权限修饰符] [返回值类型] [简单类名/全类名] [方法名]([参数列表]))
  • 举例说明
表达式execution(* com.atguigu.spring.ArithmeticCalculator.*(..))
含义ArithmeticCalculator接口中声明的所有方法。第一个“*”代表任意修饰符及任意返回值。第二个“*”代表任意方法。“..”匹配任意数量、任意类型的参数。若目标类、接口与该切面类在同一个包中可以省略包名。
表达式execution(public * ArithmeticCalculator.*(..))
含义ArithmeticCalculator接口的所有公有方法
表达式execution(public double ArithmeticCalculator.*(..))
含义ArithmeticCalculator接口中返回double类型数值的方法
表达式execution(public double ArithmeticCalculator.*(double, ..))
含义第一个参数为double类型的方法。“..” 匹配任意数量、任意类型的参数。
表达式execution(public double ArithmeticCalculator.*(double, double))
含义参数类型为double,double类型的方法

3)在AspectJ中,切入点表达式可以通过 “&&”、“||”、“!”等操作符结合起来。

表达式execution (* *.add(int,..)) || execution(* *.sub(int,..))
含义任意类中第一个参数为int类型的add方法或sub方法
表达式!execution (* *.add(int,..))
含义匹配不是任意类中第一个参数为int类型的add方法

3切入点表达式应用到实际的切面类中

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值