자바 웹 개발을 하다보면, 공통적으로 처리해야 할 작업들이 있다.

예를 들어, 로그인 관련(세션 체크), 권한 체크, XSS방어, PC, Mobile 분기, 로그, 페이지 인코딩 등

이러한 공통 부분을 따로 빼서 관리한다.

3가지 공통 처리 방법

Filter, Interceptor, AOP의 흐름

따라서 요청이 들어오면 Filter → Interceptor → AOP → Interceptor → Filter 순이다.

  1. 서버를 실행시켜 Servlet이 올라오는 동안에 init이 실행되고, 그 후 doFilter가 실행된다.
  2. Controller에 들어가기 전 preHandler(Interceptor)가 실행 된다.
  3. Controller에서 나와 postHandler(Interceptor), after Completion(Interceptor), doFilter 순으로 진행이 된다.