springboot注解表达式

发布时间 2023-12-27 15:11:04作者: 裸奔到月球
("execution(* com.aop..*.*(..))")
1、execution(): 表达式主体
2、第一个*号:表示返回类型,*号表示所有的类型
3、.包名:表示需要拦截的包名,后面的两个句点表示当前包和当前包的所有子包
4、第二个*号:表示类名,号表示所有的类
5、.*(..):最后这个星号表示方法名,号表示所有的方法,后面括弧里面表示方法的参数,两个句点表示任何参数
execution: 用于匹配方法执行连接点。 这是使用Spring AOP时使用的主要切点标识符。 可以匹配到方法级别 ,细粒度 within: 只能匹配类这级,只能指定类, 类下面的某个具体的方法无法指定, 粗粒度
this: 匹配实现了某个接口:this(com.xyz.service.AccountService) target: 限制匹配到连接点(使用Spring AOP时方法的执行),其中目标对象(正在代理的应用程序对象)是给定类型的实例。 args: 限制与连接点的匹配(使用Spring AOP时方法的执行),其中变量是给定类型的实例。 AOP) where the arguments are instances of the given types. @target: 限制与连接点的匹配(使用Spring AOP时方法的执行),其中执行对象的类具有给定类型的注解。 @args: 限制匹配连接点(使用Spring AOP时方法的执行),其中传递的实际参数的运行时类型具有给定类型的注解。 @within: 限制与具有给定注解的类型中的连接点匹配(使用Spring AOP时在具有给定注解的类型中声明的方法的执行)。 @annotation:限制匹配连接点(在Spring AOP中执行的方法具有给定的注解)。