- 切入点:匹配 原始方法
- 切入点表达式:描述 原始方法
-
接口:
执行com.xxx包下的BookDao 接口 中的无参数update方法
execution(void com.itheima.dao.BookDao.update()) -
类:执行com.xxx包下的BookDaoImpl 类 中的无参数update方法
-
语法格式
execution(public User com.itheima.dao.BookDao.update(int))
通配符
*:单个独立任意符合,可以独立出现,也可以作为前缀或后缀的匹配符出现//update*:update开头的方法 //(*):必有一个参数 execution(public * com.itheima.*.BookDao.update*(*))..:多个连续的任意符合,可以独立出现,常用语简化包名与参数的书写execution(void com..BookDao.update(..))+:专用与匹配子类型execution(* *..*Service.*(..)) // * :任意返回值 // .. :任意包 // *Service :以Service结尾的 // .* :任意方法 // (..) :任意参数
书写技巧
- 方法中,增删改(add/delete/update):精准类型;
- 查(get):
*通配符快速描述 - 切入点通常描述接口
- 包名尽量用
*不用.. - UserService => *Service
- 动词进行精准匹配,名词进行
*匹配:getById => getBy*
execution(* com.itheima.*.*Service.find*(..))