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页面。

  • 相关阅读:
    Day11作业
    day12作业
    samba共享服务
    PHP7 redis扩展安装
    linux lin命令
    PhpStorm,Pycharm,Goland破解
    PHP规范PSR2
    PHP 过滤器(Filter)
    Linux下Redis的安装与配置
    linux命令汇总
  • 原文地址:https://www.cnblogs.com/yaoyuan2/p/11897140.html
Copyright © 2011-2022 走看看