Home >Java >javaTutorial >Introduction to Spring Boo's method of handling global exceptions

Introduction to Spring Boo's method of handling global exceptions

巴扎黑
巴扎黑Original
2017-08-09 17:53:501613browse

This article mainly introduces the relevant information of Spring Boot global exception handling in detail. It has certain reference value. Interested friends can refer to it.

This article shares the overall Spring Boot situation with everyone. Exception handling is for your reference. The specific content is as follows

1. Background processing exception

a.Introducing thymeleaf dependency


<!-- thymeleaf模板插件 -->
<dependency>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

b. Set properties in the application.properties file


##

#关闭thymeleaf模板的缓存
spring.thymeleaf.cache=false

c. Write background processing Handler 

##

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, background exception printing

-------------default error2017-06-16 14: 54:05.314 WARN 6892 --- [nio-8080-exec-1] .m.m.a.ExceptionHandlerExceptionResolver : Resolved exception caused by Handler execution: org.springframework.dao.IncorrectResultSizeDataAccessException: result returns more than one elements; nested exception is javax.persistence. NonUniqueResultException: result returns more than one elements

2. Page processing exception

a. Writing html template page

<!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. Modify Handler

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. Page access results

The above is the detailed content of Introduction to Spring Boo's method of handling global exceptions. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn