-
[Spring] API 예외 처리 @ExceptionHandlerSpring 2025. 4. 15. 18:54
Spring
🔥 @ExceptionHandler vs @ControllerAdvice
@ExceptionHandler
컨트롤러 클래스 내에서 특정 예외를 처리하는 메서드를 정의하는 Annotation으로 예외가 발생했을 때 설정된 메서드가 호출되어 예외를 처리한다.

컨트롤러 클래스 내에서 특정 예외를 처리하는 메서드를 정의하는 Annotation으로 예외가 발생했을 때 설정된 메서드가 호출되어 예외를 처리한다. 사용 법 - 특정 컨트롤러에서 발생한 예외를 처리하기 위한 메서드를 지정한다.
- 단일 컨트롤러 내에서 예외를 처리한다.
- 계층별로 알맞은 예외를 발생(throw new)시키기만 하면된다.
문제점- Controller 코드에 Exception 처리를 위한 책임이 추가된다.(단일 책임 원칙 위반)
- 단일 컨트롤러 내의 예외만 처리가 가능하다.(컨트롤러 예외처리 중복코드)
- 코드 재사용, 유지보수성 부족
반환 형식 뷰 이름, String @ControllerAdvice

Application 전역에서 발생한 예외를 처리한다. 반환 타입 뷰 이름, String @RestControllerAdvice
- REST API의 예외를 처리한다.
- 반환 값이 JSON이다.
'Spring' 카테고리의 다른 글
[Spring] 연관관계 유형 (0) 2025.04.16 [Spring] 연관관계1 (1) 2025.04.16 [Spring] Bean Scope (0) 2025.04.15 [Spring] @PostConstruct, @PreDestroy (0) 2025.04.15 [Spring] Bean 생명 주기(2) (0) 2025.04.15
