SpringBoot 全局异常处理
Posted chy_18883701161
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot 全局异常处理相关的知识,希望对你有一定的参考价值。
新建包com.chy.exception,包下新建类GlobalExceptionHandler:
@ControllerAdvice //controller的增强 public class GlobalExceptionHandler { @ExceptionHandler(Exception.class) //给controller添加异常处理,括号中指定要捕获处理哪种异常,Exception.class表示处理所有种类的异常 @ResponseBody //返回给浏览器显示出来 public Map<String,String> handler1(Exception e){ //如果要使用异常对象,可以作为参数传入异常对象 Map<String, String> map = new HashMap<>(2); map.put("errorCode", "01"); map.put("errorMsg", "系统发生错误!"); //可以传回自定义的信息,也可以传回e.getMessage() return map; } }
浏览器中的显示:
因为我们添加@ResponseBody,不管返回map、String,都会转换为json形式。
- 可以编写多个方法,来处理不同种类的异常
- 可以像上面一样直接返回一段文本,也可以调用视图
- 处理的是未经捕获的、抛到controller的异常
以上是关于SpringBoot 全局异常处理的主要内容,如果未能解决你的问题,请参考以下文章
springboot 使用@ControllerAdvice注解全局处理系统异常