Mr丶冷文

文章 分类 评论
85 9 4960

站点介绍

冷文学习者(KEVINLU98.COM),记录一个北漂小码农的日常业余生活
顺带帮大家免费代下载IT教程吧的资源 传送门
友链申请地址(直接评论即可): 传送门

SpringBoot自定义错误页面

MR丶冷文 2022-01-08 759 1条评论 技术学习 javaspringspringboot404500403

首页 / 正文
Freewind主题v1.4版本已经发布,详情与下载请关注 Freewind1.4更新
抱歉:
年后因为工作和生活上的一系列不顺心的事情我无法去维护Freewind主题,目前也在思考一些问题,比如要不要继续工作,或者要不要去读硕士等,等这些事件都处理好了我会继续看Freewind主题的

发布于2022-05-26

SpringBoot自定义错误页面

问题

我们用springboot开发网站的时候难免会遇到需要自定义错误页面的场景,如403页面404页面500页面等,因为一般的服务器程序自带的默认错误页面确实有些丑或错误页面的风格与网站整体风格不挡,比如tomcat的错误页面

解决

准备错误页面

比如我这里准备了三个常见的错误页面

创建Controller

package cn.kevinlu98.cloud.freewindcloud.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;

/**
 * Author: Mr丶冷文
 * Date: 2022-01-08 15:15
 * Email: kevinlu98@qq.com
 * Description:
 */
@Controller
public class ErrorController {

    @GetMapping("/403")
    public String page403() {
        return "error/403";
    }

    @GetMapping("/404")
    public String page404() {
        return "error/404";
    }

    @GetMapping("/500")
    public String page500() {
        return "error/500";
    }
}

将WebServerFactoryCustomizer放入spring容器中

我们将错误页面的路由配置到WebServerFactoryCustomizer里并将其放入spring容器

package cn.kevinlu98.cloud.freewindcloud.config;

import org.springframework.boot.web.server.ConfigurableWebServerFactory;
import org.springframework.boot.web.server.ErrorPage;
import org.springframework.boot.web.server.WebServerFactoryCustomizer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.HttpStatus;

/**
 * Author: Mr丶冷文
 * Date: 2022-01-08 15:09
 * Email: kevinlu98@qq.com
 * Description:
 */
@Configuration
public class ErrorPageConfig {


    @Bean
    public WebServerFactoryCustomizer<ConfigurableWebServerFactory> webServerFactoryCustomizer() {
        return factory -> {
            factory.addErrorPages(new ErrorPage(HttpStatus.NOT_FOUND, "/404"), new ErrorPage(HttpStatus.FORBIDDEN, "/403"), new ErrorPage(HttpStatus.INTERNAL_SERVER_ERROR, "/500"));
        };
    }
}

效果

我们来看看效果

评论(1)

  1. 常瑞 游客 2022-01-11 17:26 回复

    可以可以

热门文章

最新评论

  • huhan

    学习

  • huhan

    wushirenwei过来看看

  • senqice

    1223333哈哈

  • Tanlan5

    过来看看

  • 王总

    谢谢

日历

2022年09月

    123
45678910
11121314151617
18192021222324
252627282930 

文章目录

站点公告
Freewind主题v1.4版本已经发布,详情与下载请关注 Freewind1.4更新
抱歉:
年后因为工作和生活上的一系列不顺心的事情我无法去维护Freewind主题,目前也在思考一些问题,比如要不要继续工作,或者要不要去读硕士等,等这些事件都处理好了我会继续看Freewind主题的
点击小铃铛关闭
配色方案