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();
        }
    
    }
  • 相关阅读:
    WordPress Uploader插件‘blog’参数跨站脚本漏洞
    WordPress Counter Per Day插件拒绝服务漏洞
    OpenSSH 远程拒绝服务漏洞
    WordPress Count Per Day插件 ‘daytoshow’参数跨站脚本漏洞
    昨日关注-每日编译(DailyBuild) 参考
    产品这么卖很好玩
    知己知彼
    让一切有调理
    昨日关注SqlServer中区分大小写
    软件公司到底有几种
  • 原文地址:https://www.cnblogs.com/super-admin/p/9685936.html
Copyright © 2011-2022 走看看