티스토리 뷰

Spring

API 예외처리

Js0l 2024. 7. 1. 15:37

어딘가에서 발생한 예외를 잡아서 이 예외를 처리한 후, 원하는 메세지와 상태코드와 함께 클라이언트 측에 정상응답으로 전달해야한다.

 

예외를 처리하는 방법

1. HandlerExceptionResolver 구현

1. HandlerExceptionResolver를 상속받은 구현체를 만든다.
2. 이 클래스를 Exception resolver로 등록한다. 

→ 직관적인 방법이지만 코드양이 너무 많다.

 

2. spring의 ExceptionResolver

  • @ExceptionHandler 
각 controller에 맞게 에러를 처리해준다. 
컨트롤러마다 에러 처리 코드를 구현한다. 
  • @ControllerAdvice
예외처리를 담당한 클래스를 만들고 그 클래스에 @ControllerAdvice를 붙여주어서 비즈니스 로직과 예외 처리를 완전히 분리시켜 준다. 
원하는 곳에 원하는 방식으로 예외를 처리할 수 있다. 
  • @ResponseStatus
@ResponseStatuse를 붙인 에러를 구현해 코드 상에서 사용하거나 ResponseStatuseException에 상태코드나 메세지를 인자로 넘겨서 예외를 발생시킨다.

 

 

Reference

https://velog.io/@juhyeon1114/Spring-API-%EC%98%88%EC%99%B8%EC%B2%98%EB%A6%AC%ED%95%98%EA%B8%B0-ExceptionHandler-ControllerAdvice

'Spring' 카테고리의 다른 글

예외 처리와 로깅 설정  (0) 2024.09.30
데이터 접근 1. JdbcTemplate  (0) 2024.07.10
Spring MVC  (0) 2024.06.28
REST API  (0) 2024.06.28
Spring  (0) 2024.06.28
공지사항
최근에 올라온 글
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함