


















切入点指示符用来指示切入点表达式目的,在 Spring AOP 中目前只有执行方法这一个连接点,Spring AOP 支持的 AspectJ 切入点指示符,切入点表达式可以使用 &&、||、!来组合切入点表达式,还可以使用类型匹配的通配符来进行匹配,类型通配符如下:
类型匹配通配符 | 说明 |
* | 表示匹配任何数量字符。示例:java.*.String,表示匹配 java 包下的任何"一级子包"下的 String 类型; 如匹配 java.lang.String,但不匹配java.lang.ss.String |
.. | 表示任何数量字符的重复,如在类型模式中匹配任何数量子包;而在方法参数模式中匹配任何数量参数。示例:java..* ,表示匹配java包及任何子包下的任何类型; 如匹配java.lang.String、java.lang.annotation.Annotation |
+ | 仅能作为后缀放在类型模式后边,匹配指定类型的子类型; |
详细说明如下:
切入点表达式示例 | 说明 |
public * *(..) | 任何公共方法的 |
@org.lixue.EnableLogTrace public * *(..) | 使用 org.lixue.EnableLogTrace 注解标注的任何公共方法 |
* org.lixue..LogTrace+.*() | org.lixue 包及所有子包下 LogTrace接口及子类型的的任何无参方法 |
切入点表达式示例 | 说明 |
org.lixue..* | 在 org.lixue 包或所有子包的任何方法执行 |
org.lixue..AccountService | 在 org.lixue 包或所有子包下 AccountService 类型的任何方法 |
org.lixue..LogTrace+ | 在 org.lixue 包或所有子包下 LogTrace 类型及子类型的任何方法 |
切入点表达式示例 | 说明 |
org.lixue.LogTrace | AOP代理对象的类型实现了 org.lixue.LogTrace 接口的任何方法 |
切入点表达式示例 | 说明 |
org.lixue.LogTrace | 实现了 org.lixue.LogTrace 接口的任何方法 |
切入点表达式示例 | 说明 |
args (java.io.Serializable,..) | 任何一个以接受"传入参数类型为 java.io.Serializable" 开头,且其后可跟任意个任意类型的参数的方法执行 |
args(java.lang.String,java.lang.String) | 任何一个以接受传入两个参数并且类型为 java.lang.String |
切入点表达式示例 | 说明 |
org.lixue.EnableLogTrace | 使用 org.lixue.EnableLogTrace 注解的任何类型的任何方法必须是在目标对象上声明这个注解,在接口上声明的对它不起作用 |
切入点表达式示例 | 说明 |
org.lixue.EnableLogTrace | 使用 org.lixue.EnableLogTrace 注解的任何类型的任何方法必须是在目标对象上声明这个注解,在接口上声明的对它不起作用 |
切入点表达式示例 | 说明 |
org.lixue.EnableLogTrace | 使用 org.lixue.EnableLogTrace 注解的任何类型的任何方法必须是在目标对象上声明这个注解,在接口上声明的对它不起作用 |
切入点表达式示例 | 说明 |
org.lixue.EnableLogTrace | 使用 org.lixue.EnableLogTrace 注解的任何方法 |
本文版权归作者 李雪(博客地址:https://www.cnblogs.wiki)所有,欢迎转载和商用,请在文章页面明显位置给出原文链接并保留此段声明,否则保留追究法律责任的权利,其他事项,可留言咨询。
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。