阅读量:0
在Spring Boot中,可以通过编写一个全局异常处理器来处理应用程序中的所有异常。以下是一个示例代码,展示了如何实现全局异常处理。
首先,创建一个自定义的异常处理器类,实现@ControllerAdvice
注解和@ExceptionHandler
注解,这样Spring Boot就会将其识别为全局异常处理器。
@ControllerAdvice public class GlobalExceptionHandler { @ExceptionHandler(Exception.class) public ResponseEntity<String> handleException(Exception e) { // 在这里编写异常处理逻辑 // 可以根据具体的异常类型进行不同的处理 // 返回自定义的错误消息或错误码 return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body("Internal Server Error"); } }
在handleException
方法中,可以根据具体的异常类型进行不同的处理逻辑,并返回自定义的错误消息或错误码。
然后,在Spring Boot的主类中,添加@EnableWebMvc
注解,以启用全局异常处理。
@SpringBootApplication @EnableWebMvc public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
这样,当应用程序中抛出任何异常时,都会被全局异常处理器捕获并处理。
需要注意的是,全局异常处理器只能处理在Controller层抛出的异常,如果在Service层或其他地方抛出的异常需要进行处理,可以在对应的方法中使用try-catch
块来处理异常,并返回自定义的错误消息或错误码。