Written on
·
673
0
안녕하세요 영한님 좋은강의 정말 감사하게 잘 듣고 있습니다.
제가 개인적으로 영한님의 가르침을 체화하고자 직접 예제를 만들고 개발을 하고 있는데요,
aop로 소요 시간을 만들어서 전체 컨트롤러에 걸고 ExceptionHandler를 RestControllerAdvice에 모아 컨트롤러의 에러를 처리하려했습니다.
그런데 자꾸 예외가 안터져서 찾아보니, Aspect에서 catch(Throwable throwable)에서 에러를 전부 먹어버리더라구요.
저는 이런 상황에 직접 response에 badRequest를 달아주고 에러값을 넘기는 방법밖에는 떠오르지 않아 컨트롤러에 직접 try catch를 걸고 return 해줬는데요 (이것을 aop로 만들 수 도 있을 것 같습니다....)
혹시 이런 상황에 영한님은 어떻게 문제를 해결하는 지 알 수 있을까요? exceptionHandler가 너무 좋아서 이 기능을 활용하고 싶어 여쭤봅니다!
Answer 1
1
안녕하세요. steadyJay님
Aspect에서 catch 이후에 throw e;를 사용해서 예외를 다시 던져주시면 됩니다.
AOP 관련해서 내일(10/27)일 출시 예정인 스프링 핵심 원리 - 고급편 강의에서 해당 문제도 어떻게 처리하는지 자세히 이해하실 수 있습니다.
감사합니다^^
바로 구매해야것네요.. 항상 감사합니다!!