execution(*service..*.*(...)为何报红
时间: 2023-07-23 12:22:08 浏览: 61
这个通配符表达式本身是没有问题的,但是如果您在代码中直接使用这个表达式,可能会因为代码语法问题而导致报红或者编译错误。
这个表达式通常是在 AOP 相关的配置文件中使用的,例如 Spring AOP 的 xml 配置文件或者注解配置中。如果您想要在代码中使用这个表达式,可能需要将表达式放在字符串中,作为参数传递给相应的 AOP 方法。另外,不同的编译器或者 IDE 对于 AOP 相关的表达式的支持程度也有所不同,可能需要根据具体情况进行调整或者配置。
相关问题
aop的execution(* com.example.service.*.*(..)) 是什么意思
aop的execution(* com.example.service.*.*(..)) 表示对 com.example.service 包下所有类的所有方法进行拦截,拦截的方法可以有任意的参数类型和数量,返回类型也可以是任意类型。其中 * 表示任意字符或任意数量的字符,(..) 表示任意参数类型和数量。
@Pointcut("execution(* com.itheima.service.impl. *.*(..))")中的*.*是什么意思
在 @Pointcut 表达式中,"*.*" 表示匹配任意类的任意方法,其中第一个 "*" 表示匹配任意类,第二个 "*" 表示匹配任意方法。因此,这个切入点表达式会匹配 com.itheima.service.impl 包中的任意类的任意方法。如果你想要匹配某个具体的类或方法,可以在 "*" 中指定类名或方法名。例如,"execution(* com.itheima.service.impl.UserServiceImpl.*(..))" 表示匹配 com.itheima.service.impl 包中的 UserServiceImpl 类的所有方法。