关键字
execution
(表达式)
pointcut="execution( *..*.*(..))
表达式
访问修饰符 返回值 包名.包名.包名…类名.方法名(参数列表)
标准的表达式写法
public void cn.luis.service.impl.AccountServiceImpl.saveAccount()
全通配写法
*..*.*(..)
变化过程
1. 访问修饰符可省略
void cn.luis.service.impl.AccountServiceImpl.saveAccount()
2. 返回值可使用通配符*
* cn.luis.service.impl.AccountServiceImpl.saveAccount()
3. 包名可使用通配符*
:表示任意包
有几级包就写几个*
* *.*.*.*.AccountServiceImpl.saveAccount()
表示当前包及其子包*..
* *..AccountServiceImpl.saveAccount()
4. 类名和方法名都可以使用通配符*
* *..*.*() //无参方法被增强
5. 参数列表
基本数据类型直接写名称,如:int
* *..*.*(int)
引用类型写包名
java.lang.String
6. 参数类型
可以用通配符*
表示::前提是必须有参数
* *..*.*(*)
..
表示有无参数均可,有参数时可以是任意类型
* *..*.*(..)
7.实际开发中切入点表达式通常写法
切到业务层实现类下的所有方法
* cn.luis.service.impl.*.*(..)