Springboot Learning - Глобальные настройки обработки исключений (вернуться к JSON)
нуждаться
иллюстрировать
@Controlleradvice
Эта аннотация представляет собой новую аннотацию, добавленную после весны 2.3. В основном он используется для оказания помощи некоторым низкоинвазивным улучшениям общих потребностей контроллера и используется в методе аннотации @Requestmapping.
@ExceptionHandler
Эта аннотация - это аннотация, используемая с @ExceptionHandler. Это пользовательский обработчик ошибок. Вы можете собрать строку JSON самостоятельно и вернуться на страницу.
Код
Создайте глобальный класс обработки исключений следующим образом:
Если для реализации разные исключения имеют разные операции, вам нужно только изменить значение значения @ExceptionHandler, чтобы быть другим. Несколько разных исключений могут быть обработаны одновременно, но состояние включения не может произойти.
Импорт javax.servlet.http.httpservletrequest; import org.springframework.web.bind.annotation.controllerAdvice; импорт org.springframework.web.bind.annotation.exceptionHandler; импорт org.spramework.web.bind.annotation.response.ressonse atshiplderSpection atshiplerSpection atshiplerSpecty.shodySponse.shodySponse.Ressonse.ReplorseSsOne.ReplorseSponse. GlobalexceptionHandler { / ** * Все исключения сообщают об ошибках * @param запрос * @param exception * @return * @throws exception * / @exceptionhandler (value = exception.class) public String allexceptionHandler (httpservletrequest, запрос на исключение), выбросит исключение {exception.printstacktrace ();); System.out.println («Я сообщил об ошибке:»+Exception.getLocalizedMessage ()); System.out.println («Я сообщил об ошибке:»+exection.getCause ()); System.out.println («Я сообщил об ошибке:»+Exception.getSupressed ()); System.out.println («Я сообщил об ошибке:»+exection.getMessage ()); System.out.println («Я сообщил об ошибке:»+exection.getStackTrace ()); вернуть "исключение сервера, пожалуйста, свяжитесь с администратором!"; }}Смоделировать класс броска исключений. Следующим примером является добавление исключения из нулевого указателя, а знаменатель не является исключением
Import org.springframework.steretype.controller; import org.springframework.web.bind.annotation.requestmapping; import org.springframework.web.bind.annotation.responsebody;@Controller@requestMapping («/exceptionTest» (/exceptionTest@SpeciveBodyPublic exceptionTesteSteSteSteStest {@@@@cheardpappestepteptesteptest {@@@@cheardpappest ("/exceptionTest"). test () {сообщение msg = null; msg.tostring (); CreateeException (); вернуть "Я нормальный"; } private void createException () {int i = 5/0; }}Start Springboot, результаты выполнения
Поскольку возвращенная строка, вы также можете использовать класс инструментов JSON, чтобы инкапсулировать ее и вернуть строку JSON
Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.