zoukankan      html  css  js  c++  java
  • zbb20180921 springboot 全局异常处理 404 500

    springboot 全局异常处理

    研究了半天springboot的全局异常处理,虽然还是需要再多整理一下,但是对于常见的404和500足以可以区分开,能够根据这两个异常分别处理

    首先配置视图解析路径

    spring.mvc.view.prefix=/WEB-INF/
    spring.mvc.view.suffix=.jsp

    针对500错误

    创建单独的配置类,放在启动类同包或子包下

    import org.springframework.web.bind.annotation.ControllerAdvice;
    import org.springframework.web.bind.annotation.ExceptionHandler;
    import org.springframework.web.bind.annotation.ResponseBody;
    
    @ControllerAdvice
    public class GlobalDefaultExceptionHandler {
        
    
        //可以返回自定义的错误页面
        @ExceptionHandler(Exception.class)  //这里根据报的异常可以写不同的方法,反别捕捉
        private ModelAndView returnErrorPage(Exception e) {
            ModelAndView mv = new ModelAndView();
            mv.addObject("exception",e.getClass().getName());
            mv.setViewName("/error");
            return mv;
        }
    }

    针对404错误

    同样创建单独的配置类,放在启动类同包或子包下

    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    import org.springframework.boot.autoconfigure.web.ErrorController;
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    
    @Controller
    @RequestMapping("error")
    public class MyErrorController implements ErrorController {
        
        Logger logger = LoggerFactory.getLogger(MyErrorController.class);
        
        @Override
        public String getErrorPath() {
            logger.info("********************进入自定义异常********************");
            return "err";   //这个返回的视图名称不要用error,springboot默认的视图名是error,如果一定要用error,需要将error放在指定的路径下,这个日后再整理。
        }
        
        @RequestMapping
        public String error() {
            return getErrorPath();
        }
    
    }
  • 相关阅读:
    ubuntu 14.04 firefox install flash-plugin
    ubuntu node.js Binaries方式安装(二进制文件安装)
    ubuntu14.04 截图
    ubuntu 14.04下,thinkpad触摸板关闭方法
    ubuntu Mozilla Firefox install flash plugin 火狐浏览器安装flash插件
    win7+ubuntu 14.04双系统 硬盘安装
    后台启动VirtualBox虚拟机
    excel vlookup函数使用方法
    图片添加文字水印和图片水印
    记录使用Stream转多层map数据结构及遇到的坑
  • 原文地址:https://www.cnblogs.com/super-admin/p/9685936.html
Copyright © 2011-2022 走看看