티스토리 뷰
어딘가에서 발생한 예외를 잡아서 이 예외를 처리한 후, 원하는 메세지와 상태코드와 함께 클라이언트 측에 정상응답으로 전달해야한다.
예외를 처리하는 방법
1. HandlerExceptionResolver 구현
1. HandlerExceptionResolver를 상속받은 구현체를 만든다.
2. 이 클래스를 Exception resolver로 등록한다.
→ 직관적인 방법이지만 코드양이 너무 많다.
2. spring의 ExceptionResolver
- @ExceptionHandler
각 controller에 맞게 에러를 처리해준다.
컨트롤러마다 에러 처리 코드를 구현한다.
- @ControllerAdvice
예외처리를 담당한 클래스를 만들고 그 클래스에 @ControllerAdvice를 붙여주어서 비즈니스 로직과 예외 처리를 완전히 분리시켜 준다.
원하는 곳에 원하는 방식으로 예외를 처리할 수 있다.
- @ResponseStatus
@ResponseStatuse를 붙인 에러를 구현해 코드 상에서 사용하거나 ResponseStatuseException에 상태코드나 메세지를 인자로 넘겨서 예외를 발생시킨다.
Reference
'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 |