Interceptor

Spring MVC - 예외 처리(Error page)
Spring MVC에서 예외 발생시 흐름 및 처리하는 방법에 대해 간단하게 정리를 한 내용입니다. 해당 정리 글에서는 예외 발생 시 전체적인 흐름 및 에러 페이지 처리에 대한 내용을 다루며, API의 예외 처리는 다루지 않습니다. 들어가기에 앞서 Spring MVC의 예외 처리에 대한 내용에 들어가기에 앞서 필터와 인터셉터 등에 대한 HTTP 요청의 흐름을 아는 것이 우선이므로 이에 대해 간략히 알아보고 들어가도록 하겠습니다. HTTP 요청 흐름 HTTP 요청에 따른 흐름은 위 이미지와 같이 WAS에서 Servlet Filter를 통과하여 Spring Interceptor를 통과하게 됩니다. (Filter와 Interceptor에 대한 자세한 내용은 "Servlet Filter & Spring Inter..

Servlet Filter & Spring Interceptor
Servlet Filter와 Spring Interceptor는 웹과 관련된 공통 관심 사항에 대한 내용을 처리하기 위한 기능이며, 차이점은 어디서 제공하는 기능이냐? 적용되는 위치가 어디냐?로 나누어 볼 수 있다. 여기서 공통 관심 사항이란 단어를 보고서 AOP(Aspect Oriented Programming)를 떠올릴 수 있겠으나 웹과 관련된 공통 관심 사항의 경우에는 HTTP header나 URL 정보 등이 필요한데 이러한 정보를 FIlter 및 Interceptor에서 제공하기 때문에 이를 이용하는 것이 좋다. 웹과 관련된 공통 관심 사항의 대표적인 예시로는 어떠한 요청이 들어왔는지를 기록하기 위한 로깅 기능 또는 특정 요청에는 인증/인가된 유저만 접근이 가능하도록 하는 인증/인가 기능이 있다...