切入点表达式说明

切入点表达式说明

aop:pointcut配置切入点表达式

<aop:pointcut  expression="execution(public void com.service.impl.CustomerServiceImpl.saveCustomer())"  id="pt1"/>
  • execution:
    • 是匹配方法的执行(常用)
    • execution(表达式)

表达式语法

execution([修饰符] 返回值类型 包名.类名.方法名(参数))

execution( public void com.service.UserServiceImpl.saveCustomer(Customer customer) )
对表达式进行优化
  • 全匹配写法
execution( public void com.service.UserServiceImpl.saveCustomer(Customer customer) )
  • 默认 public 可以省略
execution( void com.service.UserServiceImpl.saveCustomer(Customer customer) )
  • 匹配任何返回值
execution( * com.service.UserServiceImpl.saveCustomer(Customer customer) )
  • 参数列表可以使用 * , 表示可以是任何的数据类型,但必须有参数
execution( * com.service.UserServiceImpl.saveCustomer( * ) )
  • 参数列表可以使用 .. 表示有无参数均可,有参数可以是任意类型
execution( * com.service.UserServiceImpl.saveCustomer( .. ) )
  • 包名可以使用号,表示任意包,但是有几级包,需要写几个
execution( * *.*.UserServiceImpl.saveCustomer( .. ) )
  • 使用..来表示当前包,及其子包
execution( * com..UserServiceImpl.saveCustomer( .. ) )
  • 类名可以使用*号,表示任意类
execution( * com..*.saveCustomer( .. ) )
  • 类名也可以使用 * 加后缀,表示这个后缀的所有类
execution( * com..*ServiceImpl.saveCustomer( .. ) )
  • 方法名可以使用*号,表示任意方法
execution( * com..*.* ( .. ) )
  • 全通配方式
execution( * *..*.* ( .. ) )

建议写法

execution( * com..UserServiceImpl.*( .. ))
execution( * com..*ServiceImpl.*( .. ))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值