SpringAop中的execution表达式

基本语法

execution(<修饰符模式>?<返回类型模式><方法名模式>(<参数模式>)<异常模式>?)

返回类型模式、方法名模式和参数模式是必选的。

1
2
// gt.maxzhao 包及其子包下的所有方法,任意返回类型
@Pointcut("execution(* gt.maxzhao..*(..))")

..表示任务多个。

排除当前表达式范围中的更小范围

1
2
3
// 扫描所有接口
// 但是不扫描gt.maxzhao.boot.log.api.AppLogApiController.list方法的接口
@Pointcut("execution(* gt.maxzhao..api.*.*(..)) && !execution(* gt.maxzhao.boot.log.api.AppLogApiController.list(..))")

本文地址: https://github.com/maxzhao-it/blog/post/42520/