使用spring:aop中修改增强方法中的参数

时间:2021-11-07 05:06:49

大家都知道,在增强方法中,使用jp.getArgs()[index]可以获取传进来的参数,但是参数传进来之后,怎么改变它的值呢?

因为jp.getArgs()[index]获取到的只是数据的备份,所以这样修改jp.getArgs()[index] = Null;修改后在别的增强方法中得到的值并没有改变

所以可以使用这种方法:

Object[] args = jp.getArgs();

args[0] = null;

args[1] = null;

然后调用环绕增强(Around)中的jp.proceed(args)方法,就可以修改传进来的参数了。

这样应该是相当于重新传了一份参数进去