웹개발

스프링 웹개발 용어정리:: Spring Interceptor

업무 중 2020. 10. 24. 17:16

Interceptor란 컨트롤러에 들어오는 요청 (HttpRequest)와 컨트롤러의 응답(HttpResponse)를 가로채는 역할을 한다.

인터셉터는 관리자만 접근할 수 있는 관리자 페이지에 접근하기 전에 관리자 인증을 하는 용도로 활용된다.

 

물론 servlet의 앞, 뒤에서 HttpRequest와 HttpResponse를 가로채는 Filter와 그 역할이 유사한데, Filter와 interceptor는 분명히 다르다.

 

FilterInterceptor 의 차이

  • 호출시점
    • Filter는 DispatcherServlet 이 실행되기 전
    • Interceptor는 DistpatcherServlet이 실행된 후
  • 설정위치
    • Filter는 web.xml
    • Interceptor는 spring-servlet.xml
  • 구현 방식
    • Filter는 web.xml에서 설정을 하면 구현이 가능
    • Interceptor는 spring-servlet.xml의 설정 뿐만 아니라 메서드 구현도 필요