SpringBoot对Spring MVC都做了哪些事?(三)

 

SpringBoot对Spring MVC都做了哪些事?(三)插图亿华云

上一篇:《​​SpringBoot对Spring MVC都做了哪些事?(二)​​》

错误处理

默认情况下,Spring Boot提供了一个/error映射,以合理的方式处理所有错误,并在servlet容器中注册为“全局”错误页。对于机器客户端,它生成一个JSON响应,其中包含错误、HTTP状态和异常消息的详细信息。对于浏览器客户端,有一个以HTML格式呈现相同数据的“whitelabel”错误视图(要对其进行自定义,请添加一个解决错误的视图)。

如果要自定义默认错误处理行为,可以设置许多server.error属性。

要完全替换默认行为,可以实现ErrorController并注册该类型的bean定义,或者添加ErrorAttributes类型的bean以使用现有机制,但替换内容。

你还可以定义一个用@ControllerAdvice注释的类,以自定义JSON格式,以针对特定控制器和/或异常类型返回,如以下示例所示:

@ControllerAdvice(basePackageClasses = AcmeController.class)public class AcmeControllerAdvice extends ResponseEntityExceptionHandler { @ExceptionHandler(YourException.class) @ResponseBody ResponseEntity

THE END
Copyright © 2024 亿华云