개발공부/JAVA Spring
[Spring Boot] 예외처리
bzerome240
2023. 3. 28. 23:58
Exeption 클래스 구분
Chekcked Exception | Unchecked Exception | |
처리 여부 | 반드시 예외처리 필요 | 명시적 처리를 강제하지 않음 |
확인 시점 | 컴파일 단계 | 실행 중 단계 |
대표적인 예외 클래스 | IOExceiption SQLException |
RuntimeException NullPointerException IllegalArgumentException IndexOutOfBoundException SystemException |
uncheked exception 은 문법상 문제는 없지만 예기치 않은 상황이 생겨 발생하는 예외이다.
예외처리 방법
1. 예외 복구 - try catch
2. 예외 처리 회피 - throw
예외가 발생한 메서드를 호출한 곳에서 에러 처리를 할 수 있게 전가하는 방법
클라이언트에 오류 메시지를 전달하기 위한 방식
1. @RestControllerAdvice 와 @ExceptionHandler를 통한 컨트롤러 예외처리
2. @ExceptionHandler를 통해 특정 컨트롤러의 예외를 처리
@ExceptionHandler
@RestController 가 적용된 빈에서 발생하는 예외를 잡아 처리하는 메서드를 정의할 때 사용한다.
어떤 예외 클래스를 처리할지는 value 속성으로 등록한다.
@ExceptionHandler(value = RuntimeException.class)
public ResponseEntity<Map<String, String>> handleException(RuntimeException e, HttpServletRequest request) {
...
728x90
반응형