Stellen abfangen haben wir einen Controller wie dieseSpring MVC @Controller eigene Anfragen
@RestController
@RequestMapping("/{parameter}")
pubic class MyController {
@ExceptionHandler(SomeException.class)
public Object handleSomeException() { /* handle */ }
@RequestMapping("/something")
public Object handleSomething(@PathVariable("parameter") String parameter) {
/* handle */
}
@RequestMapping("/somethingElse")
public Object handleSomethingElse(@PathVariable("parameter") String parameter) {
/* handle */
}
}
Und die Frage, wie eine gemeinsame Vor- \ post-Handling für diese spezielle Steuerung in ähnlicher Weise wie @ExceptionHandler
implementieren arbeitet . Z.B. Ich möchte eine Methode im Controller haben, die eine Anfrage vor den Handler-Methoden empfängt, aber nur Anfragen für diesen speziellen Controller.
Ich bin bewusst, RequestBodyAdvice
und ResponseBodyAdvice
Schnittstellen, aber wollen etwas lokalen Controller.
Als ein Anwendungsbeispiel - Ich möchte einige Validierung für gemeinsame parameter
Variable vor jedem Handler.
Werfen Sie einen Blick auf Frühling AOP: https://docs.spring.io/spring/docs/current/spring-framework-reference/html/aop.html – user1675642
Sie können auch gehe mit HandlerInterceptor wie hier erwähnt http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/servlet/HandlerInterceptor.html – Zeus