Spring Interceptor
스프링 인터셉터의 개념과 역사 스프링 인터셉터(Spring Interceptor)는 2006년 Spring Framework 2.0에서 처음 도입된 기능이다. MVC 아키텍처에서 컨트롤러가 요청을 처리하기 전, 후, 그리고 뷰 렌더링이 끝난 뒤에 개입해 공통 기능을 수행한다. HandlerInterceptor 인터페이스의 preHandle, postHandle, afterCompletion 세 가지 메서드를 통해 요청의 전처리와 후처리를 담당하며, 인증, 로깅, 실행 시간 측정, 공통 데이터 설정 같은 횡단 관심사(cross-cutting concerns)를 비즈니스 로직과 분리하도록 설계되었다. 스프링 인터셉터와 서블릿 필터의 핵심 차이는 동작 계층에 있다. 서블릿 필터는 서블릿 컨테이너(Tomcat, Jetty 등) 레벨에서 DispatcherServlet에 도달하기 전에 실행된다. 반면 인터셉터는 스프링 컨텍스트 내부에서 DispatcherServlet이 핸들러 매핑을 통해 컨트롤러를 찾은 뒤, 실제 컨트롤러를 호출하기 전후에 실행된다. 그래서 스프링이 제공하는 의존성 주입, 빈 관리, 예외 처리 같은 기능을 자연스럽게 활용할 수 있다. ...