본문 바로가기
개발공부/JAVA Spring

[Spring Boot] 예외처리

by bzerome240 2023. 3. 28.

 

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
반응형

댓글