Maison >Java >javaDidacticiel >Explication détaillée des exemples de gestion des exceptions globales Spring Boot en Java

Explication détaillée des exemples de gestion des exceptions globales Spring Boot en Java

怪我咯
怪我咯original
2017-06-30 10:55:532553parcourir

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>
b. Gestionnaire

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 "系统错误,请联系管理员";
 }
}
c. Résultats d'accès à la page

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn