zoukankan      html  css  js  c++  java
  • springboot

    1、概览

    基于《springboot - 映射 /error 到自定义且实现了ErrorController的Controller》改造,仅将MyCustomErrorController类修改如下:

    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.boot.web.servlet.error.ErrorAttributes;
    import org.springframework.boot.web.servlet.error.ErrorController;
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.ResponseBody;
    import org.springframework.web.context.request.ServletWebRequest;
    
    import javax.servlet.http.HttpServletRequest;
    import java.util.Map;
    
    /**
     * @author www.gomepay.com
     * @date 2019/11/18
     */
    @Controller
    public class MyCustomErrorController implements ErrorController {
        @Autowired
        private ErrorAttributes errorAttributes;
    
        @RequestMapping("/error")
        @ResponseBody
        public String handleError(HttpServletRequest request) {
            ServletWebRequest servletWebRequest = new ServletWebRequest(request);
            Map<String, Object> errorAttributes = this.errorAttributes.getErrorAttributes(servletWebRequest, true);
            final StringBuilder errorDetails = new StringBuilder();
            errorAttributes.forEach((attribute, value) -> {
                errorDetails.append("<tr><td>")
                        .append(attribute)
                        .append("</td><td><pre>")
                        .append(value)
                        .append("</pre></td></tr>");
            });
    
            return String.format("<html><head><style>td{vertical-align:top;border:solid 1px #666;}</style>"
                    + "</head><body><h2>Error Page</h2><table>%s</table></body></html>", errorDetails.toString());
        }
    
        @Override
        public String getErrorPath() {
            return "/error";
        }
    }

    执行:

    在我们自定义的 ErrorController中使用ErrorAttributes,可代替error.jsp 404.jsp页面。

  • 相关阅读:
    Android--adb
    Android 爬坑之路
    Android倒计时实现
    Android Studio常用设置
    Java Web开发——MySQL数据库的安装与配置
    DOS命令(系统错误5,拒绝访问)的解决方法
    Java EE开发环境——MyEclipse2017破解 和 Tomcat服务器配置
    设计模式-工厂模式
    设计模式-简单工厂模式
    设计模式简介
  • 原文地址:https://www.cnblogs.com/yaoyuan2/p/11897140.html
Copyright © 2011-2022 走看看