Springboot Learning - Globale Einstellungen zur Ausnahme von Ausnahme (Rückkehr zu JSON)
brauchen
veranschaulichen
@ControllerAdvice
Diese Annotation ist eine neue Annotation, die nach dem Frühjahr 2.3 hinzugefügt wurde. Es wird hauptsächlich zur Unterstützung einiger geringer Verbesserungen der gemeinsamen Controller verwendet und wird bei der @RequestMapping-Annotationsmethode verwendet.
@ExceptionHandler
Diese Annotation ist eine Annotation, die mit @ExceptionHandler verwendet wird. Es ist ein benutzerdefinierter Fehlerhandler. Sie können die JSON -Zeichenfolge selbst zusammenstellen und zur Seite zurückkehren.
Code
Erstellen Sie wie folgt eine globale Ausnahmeklasse:
Wenn unterschiedliche Ausnahmen unterschiedliche Vorgänge zur Implementierung haben, müssen Sie nur den Wert des Werts von @exceptionHandler ändern, um unterschiedlich zu sein. Mehrere verschiedene Ausnahmen können gleichzeitig behandelt werden, aber der Einschlusszustand kann nicht auftreten.
importieren javax.servlet.http.httpServletRequest; import org.springframework.web.bind.annotation.controlleradvice; import org.spingframework org.springFramework.web.bind.annotation.ResponseBody; @ControllerAdvice @responseBodypublic class GlobalExceptionHandler { / ** * Alle Ausnahmen gemeldete Fehler * @param Anfrage * @param AUSSCHLIESSE * @Return * @Throws Exception * / @ExceptsHandler (valueSQual). {exception.printstacktrace (); System.out.println ("Ich habe einen Fehler gemeldet:"+exception.getLocalizedMessage ()); System.out.println ("Ich habe einen Fehler gemeldet:"+exception.getCause ()); System.out.println ("Ich habe einen Fehler gemeldet:"+exception.getSuppressed ()); System.out.println ("Ich habe einen Fehler gemeldet:"+exception.getMessage ()); System.out.println ("Ich habe einen Fehler gemeldet:"+exception.getStacktrace ()); Rückgabe "Server -Ausnahme, bitte wenden Sie sich an den Administrator!"; }}Simulieren Sie eine Ausnahme -Wurfklasse. Das folgende Beispiel besteht darin, eine Null -Zeiger -Ausnahme auszulegen, und der Nenner ist keine Ausnahme
import org.springframework.steretype.controller; import org.springframework.web.bind.annotation.requestmapping; public String test () {message msg = null; msg.tostring (); CreateException (); kehre "Ich bin normal"; } private void createException () {int i = 5/0; }}Start Springboot, Ausführungsergebnisse
Da die zurückgegebene Zeichenfolge, können Sie auch die JSON -Tool -Klasse verwenden, um sie zu verkapseln und eine JSON -String zurückzugeben
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.