Cet article présente principalement les informations pertinentes sur Spring Boot global Gestion des exceptions en détail. Il a une certaine valeur de référence. Les amis intéressés peuvent s'y référer
Cet article est partagé par tout le monde avec Spring Boot. Gestion globale des exceptions pour votre référence. Le contenu spécifique est le suivant
1. Exceptions de traitement en arrière-plan
Présentation de la dépendance thymeleaf
<!-- thymeleaf模板插件 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency>
b. Définissez l'attribut dans le fichier application.properties
#关闭thymeleaf模板的缓存 spring.thymeleaf.cache=false
c. Écrivez un gestionnaire de traitement en arrière-plan
import org.springframework.web.bind.annotation.ControllerAdvice; import org.springframework.web.bind.annotation.ExceptionHandler; @ControllerAdvice public class GlobalExceptionHandler { //设置此handler处理所有异常 @ExceptionHandler(value=Exception.class) public void defaultErrorHandler(){ System.out.println("-------------default error"); } }
d. >
-------------erreur par défaut2017-06-16 14:54:05.314 WARN 6892 --- [ nio-8080-exec-1] .m.m.a.ExceptionHandlerExceptionResolver : Exception résolue causée par l'exécution du gestionnaire : org.springframework.dao.IncorrectResultSizeDataAccessException : le résultat
returnplus d'un élément est une exception imbriquée javax.persistence.NonUniqueResultException : le résultat renvoie plusieurs éléments
2. Exception de traitement de page
a Écriture d'une page de modèle HTML<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org" xmlns:sec="http://www.thymeleaf.org/thymeleaf-extras-springsecurity3"> <head> <meta charset="UTF-8" /> <title>Insert title here</title> </head> <body> <h1 th:inlines="text">异常出现啦</h1> ${messages} </body> </html>
import org.springframework.web.bind.annotation.ControllerAdvice; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.ResponseBody; @ControllerAdvice public class GlobalExceptionHandler { @ExceptionHandler(value=Exception.class) @ResponseBody public String defaultErrorHandler(){ System.out.println("-------------default error"); return "系统错误,请联系管理员"; } }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!