SpringBoot中怎么实现统一异常处理

   2024-10-27 4880
核心提示:在Spring Boot中,可以通过@ControllerAdvice注解来实现统一异常处理。以下是一个示例:@ControllerAdvicepublic class GlobalEx

在Spring Boot中,可以通过@ControllerAdvice注解来实现统一异常处理。以下是一个示例:

@ControllerAdvicepublic class GlobalExceptionHandler {    @ExceptionHandler(Exception.class)    public ResponseEntity<ErrorResponse> handleException(Exception ex) {        ErrorResponse errorResponse = new ErrorResponse("500", ex.getMessage());        return new ResponseEntity<>(errorResponse, HttpStatus.INTERNAL_SERVER_ERROR);    }    @ExceptionHandler(MyCustomException.class)    public ResponseEntity<ErrorResponse> handleCustomException(MyCustomException ex) {        ErrorResponse errorResponse = new ErrorResponse("400", ex.getMessage());        return new ResponseEntity<>(errorResponse, HttpStatus.BAD_REQUEST);    }    @Data    @AllArgsConstructor    public static class ErrorResponse {        private String code;        private String message;    }}

在上面的示例中,我们定义了一个GlobalExceptionHandler类,并使用@ControllerAdvice注解来标识它是一个全局异常处理类。然后我们定义了两个异常处理方法,分别处理Exception和MyCustomException类型的异常。在这些方法中,我们可以自定义返回的错误信息和HTTP状态码。

注意:为了让Spring Boot能够扫描到GlobalExceptionHandler类,需要确保它在应用程序的包或其子包中。

 
举报打赏
 
更多>同类网点查询
推荐图文
推荐网点查询
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号