Spring引导将所有错误映射到/ error,我们可以将错误隔离,就像我们收到DB错误然后我们显示不同的消息一样,如果路径不正确,我们会显示不同的错误。我尝试了以下内容,但我想根据Http状态给出一些消息,并且不想在某个页面上重定向
@Configuration
class ErrorConfiguration implements EmbeddedServletContainerCustomizer {
@Override
public void customize(ConfigurableEmbeddedServletContainer container) {
container.addErrorPages(new ErrorPage(HttpStatus.BAD_REQUEST, "/400"));
container.addErrorPages(new ErrorPage(HttpStatus.FORBIDDEN, "/403"));
container.addErrorPages(new ErrorPage(HttpStatus.NOT_FOUND, "/404"));
container.addErrorPages(new ErrorPage(HttpStatus.METHOD_NOT_ALLOWED, "/405"));
container.addErrorPages(new ErrorPage(HttpStatus.INTERNAL_SERVER_ERROR, "/500"));
container.addErrorPages(new ErrorPage(HttpStatus.NOT_IMPLEMENTED, "/501"));
container.addErrorPages(new ErrorPage(HttpStatus.BAD_GATEWAY, "/502"));
container.addErrorPages(new ErrorPage(HttpStatus.SERVICE_UNAVAILABLE, "/503"));
}
}
答案 0 :(得分:0)
Spring Boot已经支持自定义错误页面;您可以在resources/public/error/
或resources/templates/error/
中的模板文件中添加静态HTML。
请参阅"Custom error pages" in Spring Boot reference documentation。