2017 - 10 - 27 (금)
코드로 배우는 스프링 웹프로젝트[구멍가게 코딩단 지음] 참조
인터셉터의 개념
인터셉터는 필터 개념이라고 생각 하면 쉽다.
Spring MVC 에서 context는 bean을 관리해준다.(root-context, servlet-context)// 실무에서는 context한개만 사용한다고 한다.
listener 는 web.xml에 등록하여 root-context 를 로드시킨다.
인터셉터의 경우 스프링 내의 context 내에 존재하기 때문에 context내의 모든 bean을 활용할 수 있다.
인터셉터를 활용하여 로그인 기능을 쉽게 구현할 수 있다.
HandlerInterceptorAdapter (추상)클래스
HandlerInterceptor를 쉽게 활용하기 위해 인터페이스의 메소드를 미리 구현해놓은 클래스이다.
Interceptor 활용
인터셉터는 사용자가 어떠한 request를 보냈을 때 컨트롤러에 가기전에 있는 필터이다.
인터셉터를 활용하기 위해 인터셉터 클래스를 정의하고, 이 인터셉터를 context에 등록해야한다.
해당 URI로 오는 REQUEST를 매핑하여 인터셉터를 처리하고 컨트롤러 처리를 실행한다.
예를 들어 로그인의 경우 인터셉터에서 httpSession 을 객체에 같이 담아준다면 Controller에서 httpsession을 처리할 필요가 없어진다.