spring boot全局捕获异常

2021-03-09 11:28

阅读:510

标签:main   pre   strong   class   范围   web   mod   ram   bsp   

spring boot全局捕获异常

制作人:全心全意

@ExceptionHandler:标识拦截异常

  @ControllerAdvice:Controller的一个辅助类,最常用的就是作为全局异常处理的切面类
  @ControllerAdvice可以指定扫描范围
  @ControllerAdvice约定了几种可行的返回值,如果是直接返回model类的话,需要使用@ResponseBody进行json转换

    返回String值,标识跳转到view
    返回modelAndView
    返回model+@ResponseBody

 

捕获异常类

package com.zq.main.controller;

import java.util.HashMap;
import java.util.Map;

import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;

@ControllerAdvice
//仅能捕获系统代码出现的问题,例如500(404无法捕获)
public class ZqExceptionHandler {
	// 拦截系统的所有异常
	@ExceptionHandler(RuntimeException.class)
	@ResponseBody
	public Map exceptionHandler() {
		System.out.println(11111);
		HashMap objectHashMap = new HashMap();
		objectHashMap.put("respCode", "500");
		objectHashMap.put("respMsg", "系统错误");
		return objectHashMap;
	}
}

  

spring boot全局捕获异常

标签:main   pre   strong   class   范围   web   mod   ram   bsp   

原文地址:https://www.cnblogs.com/zhangquan-yw/p/14175778.html


评论


亲,登录后才可以留言!