zoukankan      html  css  js  c++  java
  • SpringBoot自定义全局异常返回页面

    返回自定义异常界面,需要引入thymeleaf依赖(非必须,如果是简单的html界面则不用)

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-thymeleaf</artifactId>
    </dependency>

    resource目录下新建templates,并新建error.html

    application.properties

    spring.resources.static-locations = classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/,classpath:/templates/
    # session失效时间,30m表示30分钟
    server.servlet.session.timeout=30m

    CustomExtHandler.java

    package net.cyb.demo.handler;
    import org.springframework.web.bind.annotation.ControllerAdvice;
    import org.springframework.web.bind.annotation.ExceptionHandler;import org.springframework.web.servlet.ModelAndView;
    
    import javax.servlet.http.HttpServletRequest;
    
    /**
     * 标记这是一个异常处理类
     */
    @ControllerAdvice
    public class CustomExtHandler {
        @ExceptionHandler(value = Exception.class)
        ModelAndView HandlerException(Exception e, HttpServletRequest request){
            ModelAndView modelAndView=new ModelAndView();
            //错误页路径
            modelAndView.setViewName("error.html");
            modelAndView.addObject("msg",e.getMessage());
            return modelAndView;
        }
    }

    error.html

    <!DOCTYPE html>
    <html lang="en" xmlns:th="http://www.thjymeleaf.org">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    这个是自定义异常界面
    <p th:text="${msg}"></p>
    </body>
    </html>

  • 相关阅读:
    ASP.NET 弹出对话框和页面之间传递值的经验总结
    开拔(博)
    Qt 报错:use of undeclared identifier
    Qt http学习
    Qt 使用QJson生成解析json数据的方法
    Qt Http请求,post和get
    Qt 使用QNetworkAccessManager实现Http操作
    一个截断多个数据库日志的的存储过程
    如何在程序中友好提示错误
    招聘网络工程师一名
  • 原文地址:https://www.cnblogs.com/chenyanbin/p/13238134.html
Copyright © 2011-2022 走看看