aop环绕通知argnames
时间: 2023-11-24 14:46:13 浏览: 40
AOP(面向切面编程)中的环绕通知是一种通知类型,它可以在目标方法的前后都执行自定义的逻辑。在使用环绕通知时,可以通过argnames属性来获取目标方法的参数名。
在Spring框架中,通过使用@Around注解来声明环绕通知,同时可以使用ProceedingJoinPoint参数来操作目标方法。通过ProceedingJoinPoint的getSignature()方法可以获取到MethodSignature对象,通过MethodSignature对象的getParameterNames()方法可以获取到目标方法的参数名数组。
下面是一个示例代码:
```java
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.reflect.MethodSignature;
import org.springframework.stereotype.Component;
@Aspect
@Component
public class MyAspect {
@Around("execution(* com.example.MyClass.myMethod(..))")
public Object aroundAdvice(ProceedingJoinPoint joinPoint) throws Throwable {
MethodSignature signature = (MethodSignature) joinPoint.getSignature();
String[] argNames = signature.getParameterNames();
// 在这里可以对参数名进行操作
return joinPoint.proceed();
}
}
```