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>

  • 相关阅读:
    Python_01安装与配置
    数据库的事务日志已满,起因为"LOG_BACKUP"
    百度网盘视频在线倍速播放的方法——Js 一行代码实现
    Socket里Client和Server
    Python自动化执行遍历点击列表的前20行每一行
    pyhton判断闰年
    Python程序结构-包
    试题 历届试题 错误票据
    试题 历届试题 剪格子
    试题 历届试题 打印十字图
  • 原文地址:https://www.cnblogs.com/chenyanbin/p/13238134.html
Copyright © 2011-2022 走看看