스프링 인터셉터

서블릿 필터와 같이 웹과 관련된 공통 관심사를 처리하는 기술

서블릿 필터와 유사하지만 적용되는 순서와 범위, 사용 방법이 다르다.

스프링 인터셉터 흐름

HTTP 요청 → WAS → **필터** → 서블릿 → **스프링 인터셉터** → 컨트롤러

스프링 인터셉터는 디스패처 서블릿 과 컨트롤러 사이에서 컨트롤러 호출 직전에 호출

스프링 인터셉터는 스프링 MVC 가 제공하는 기능이기 떄문에 디스패쳐 서블릿이후 등장

(스프링 MVC의 시작점이 디스패쳐 서블릿)

스프링 인터셉터URL 패턴 적용 가능, 매우 정밀하게 설정이 가능

스프링 인터셉터 제한

HTTP 요청 → WAS → 필터 → 서블릿 → **스프링 인터셉터** → 컨트롤러 //로그인 사용자
HTTP 요청 → WAS → 필터 → 서블릿 → **스프링 인터셉터(적절하지 않은 요청이라 판단, 컨트롤러 호출X)** //비 로그인 사용자

인터셉터에서 적절하지 않은 요청이라 판단 시 해당 지점에서 끝낼 수 있어 로그인 여부 체크에 용이

스프링 인터셉터 체인

HTTP 요청 → WAS → 필터 → 서블릿 → **스프링 인터셉터1** → **인터셉터2** → **인터셉터3** → 컨트롤러