반응형
Java에서는 Exception이 발생할 경우, 이에 대해서 스프링에서는 처리해주는 ExceptionHandler와 ControllerAdvice가 있다.
ControllerAdvice는 Controller에서 발생하는 Exception을 받아서 처리해주는 역할을 한다.(마치 interceptor 같다)
그렇다면 궁금해진것은, 어떻게 Exception이 발생하는 것을 catch하여 처리를 해주게될까?
그전에 알아야 할 것은 AOP라는 개념이다.
ControllerAdvice도 Advice가 포함되어있으니 AOP를 기반으로 동작할 것이라고 유추할 수 있다.
Controller 실행 중에 Exception이 발생할 경우 해당 Aspect의 기능을 수행하고 다시 원래의 빈에서 나머지 기능을 수행하게 된다.
여기서 ExceptionHandler를 사용하여 특정 Exception Class 마다 다른 기능을 수행하게 설정할 수 있다.
반응형
'CS' 카테고리의 다른 글
도커와 쿠버네티스 (0) | 2021.08.31 |
---|---|
함수형 프로그래밍 (0) | 2021.08.27 |
[Spring] AOP란 무엇일까? (0) | 2021.08.21 |
[JAVA] 예외 처리 종류 (0) | 2021.08.16 |
Devops와 CI/CD (0) | 2021.08.05 |