Ist es möglich, Verfahren Argumentwert auf Grundlage einiger Prüfung vor der Ausführung mit Spring AOPFrühling AOP Änderungswert von Methoden Argument um Rat
Meine Methode
public String doSomething(final String someText, final boolean doTask) {
// Some Content
return "Some Text";
}
Tipps Methode sich ändern
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();
}
Bitte machen Sie mir die Möglichkeit, die Methode Argument valu einstellen e da es keine Einstelloptionen für das Argument gibt.
Seien Sie einfach vorsichtig: Diese Dinge werden während ref leicht übersprungen Schauspielerei. Wenn Sie keine schöne Testsuite haben, kann es wehtun. –
Ja, absolut! Die Argumente müssen übereinstimmen und die Refactoring-Tools werden in solchen Fällen nicht helfen. – reto
Aber ich verwendete MethodInterceptor-Schnittstelle. Welche Änderungen muss ich für ProceedingJoinPoint vornehmen? –