반응형
서버단에서 로직을 처리하는 과정에서 발생하는 예외를 통합관리하고, 그 결과를 클라이언트에 반환해준다.
설정방법
@RestConroller가 붙어있는 api컨트롤러에서 발생하는 예외를 캐치하겠다는 의미
구현부
- 클래스 내부의 메서드들은 특정 Exception에 대해 처리하는 로직이 들어있다.
- @ExceptionHandler(CannotUpdateException.class) 는 CannotUpdateException (직접 만든 RunTimeException)이 발생했을 경우, 해당 메서드를 실행하겠다는 의미이다.
- @ResponseStatus 는 말그대로 응답헤더의 Http Status Code를 지정해주는 것이다.
- ErrorMessage는 클라이언트에게 반환하는 객체로, 예외 내용을 담고 있다.
exception 발생 위치
궁금한 점
예외 처리를 ErrorMessage라는 객체를 생성해서 반환하게끔 했는데, 굳이 ErrorMessage를 만들 필요가 있는지 의문이다.
다음과 같이 Exception 자체를 반환하면 안될까?
반응형
'Web > Spring Boot' 카테고리의 다른 글
[DI] 생성자 주입을 사용하자 (0) | 2022.06.21 |
---|---|
@EventListener & @PostConstruct (0) | 2022.06.09 |
[Spring] AOP (0) | 2019.06.26 |
[Spring] DI (Dependency Injection) (0) | 2019.06.24 |
[Spring] Logback 사용법(gradle) (0) | 2019.06.18 |