弹簧AOP变化值的方法争论围绕建议
2022-09-02 13:10:22
是否可以在使用Spring AOP执行之前根据一些检查更改方法参数值
我的方法
public String doSomething(final String someText, final boolean doTask) {
// Some Content
return "Some Text";
}
建议方法
public Object invoke(final MethodInvocation methodInvocation) throws Throwable {
String methodName = methodInvocation.getMethod().getName();
Object[] arguments = methodInvocation.getArguments();
if (arguments.length >= 2) {
if (arguments[0] instanceof String) {
String content = (String) arguments[0];
if(content.equalsIgnoreCase("A")) {
// Set my second argument as false
} else {
// Set my second argument as true
}
}
}
return methodInvocation.proceed();
}
请建议我设置方法参数值的方法,因为参数没有 setter 选项。