2021
11-01
11-01
Spring Aop 如何获取参数名参数值
前言:有时候我们在用SpringAop面向切面编程,需要获取连接点(JoinPoint)方法参数名、参数值。环境:MacOSXIntellijIDEASpringBoot2xJdk1.8xCode:packagecom.example.aopdemo.aop;importlombok.extern.slf4j.Slf4j;importorg.aspectj.lang.ProceedingJoinPoint;importorg.aspectj.lang.annotation.Around;importorg.aspectj.lang.annotation.Aspect;importorg.aspectj.lang.reflect.CodeSignature;i...
继续阅读 >
SpringAOP通过JoinPoint获取参数名和值在Java8之前,代码编译为class文件后,方法参数的类型固定,但是方法名称会丢失,方法名称会变成arg0、arg1….。在Java8开始可以在class文件中保留参数名。publicvoidtet(JoinPointjoinPoint){//下面两个数组中,参数值和参数名的个数和位置是一一对应的。Object[]args=joinPoint.getArgs();//参数值String[]argNames=((MethodSignature)joinPoint.get...