1

Ich arbeite mit Intellij Idee. und ich plane, @ControllerAdvice zu verwenden, um Ausnahmen zu behandeln. dann meldet intellij "unhandled exception", weil ich keinen try-catch-Block in meinem Code habe. dann, wie man es löst? es muss einen Weg geben.Wie @ControllerAdvice in Intellij Idee anwenden?

+0

Ich glaube nicht, dass Sie es in IntelliJ IDEA ignorieren können. – CrazyCoder

+0

vielleicht muss ich meine Frage bearbeiten –

Antwort

2

Wenn Sie die geprüften Ausnahmen nicht mit einem try catch behandeln, müssen Sie die Ausnahme in der Methodensignatur erneut auslösen. Dadurch wird das Verfahren erzwingen, fordert, dass das Verfahren die Ausnahme zu behandeln

public void someMethod() throws IOException { 

} 

https://docs.oracle.com/javase/tutorial/essential/exceptions/

+0

es funktioniert. Der ExceptionHandler kann jedoch nur Exception auslösen, die vom Controller-Layer ausgelöst wird, und diejenigen, die vom Service-Layer ausgelöst werden, können niemals abgefangen werden, egal, wo sich mein ExceptionHandler befindet. –

+0

sollten Sie eine benutzerdefinierte Ausnahme (ex UserServiceException) erstellen, die in Ihrer Serviceebene ausgelöst wird, wenn die ursprüngliche Ausnahme auftritt. http://stackoverflow.com/questions/29731353/what-are-the-best-practices-to-handle-exception-at-controller-service-and-da-l – jmw5598

0

Anmerkungen Sprachsemantik nicht beeinflussen können. Sie können @ControllerAdvice verwenden, um Ausnahmen zur Laufzeit zu behandeln, aber sie müssen deklariert werden, damit der Code vom Java-Compiler akzeptiert wird.