복붙노트

[SPRING] Spring HandlerInterceptor 대 서블릿 필터

SPRING

Spring HandlerInterceptor 대 서블릿 필터

Spring의 HandlerInterceptor는 이제 를 사용하여 특정 URL에서만 호출되도록 구성 할 수 있습니다.

서블릿 필터는 동일한 기능 (로깅, 보안 등)을 달성 할 수 있습니다. 그래서 어느 것이 사용되어야합니까?

인터셉터를 사용하면 ModelAndView 객체를 사용하여 모델 작업을 수행 할 수 있으므로 이점이 더 많습니다. 누구나 필터 또는 인터셉터가 다른 시나리오보다 장점이있는 시나리오를 추출 할 수 있습니까?

해결법

  1. ==============================

    1.org.springframework.web.servlet.HanderInterceptor 인터페이스 JavaDoc에는이 문항을 설명하는 두 단락이 있습니다.

    org.springframework.web.servlet.HanderInterceptor 인터페이스 JavaDoc에는이 문항을 설명하는 두 단락이 있습니다.

  2. ==============================

    2.Spring Handler 인터셉터를 사용하여 요청주기의 더 많은 부분을 처리하고 프로세스의 더 많은 정보에 액세스 할 수 있습니다. 필터는 요청 / 응답주기에 필터보다 긴밀하게 연결됩니다.

    Spring Handler 인터셉터를 사용하여 요청주기의 더 많은 부분을 처리하고 프로세스의 더 많은 정보에 액세스 할 수 있습니다. 필터는 요청 / 응답주기에 필터보다 긴밀하게 연결됩니다.

    요청 / 응답을 블랙 박스 시스템으로 처리 할 때 필터가 더 적합합니다. 서블릿의 구현 방식에 관계없이 작동합니다.

    Spring MVC를 사용한다면 새로운 로직을 서블릿 필터로 작성할 필요가 거의 없다. 필터가 할 수있는 모든 것, 요격기가보다 쉽고 우아하게 할 수 있습니다.

    또한 서블릿 필터는 인터셉터보다 훨씬 오래 동안 사용되었습니다.

  3. ==============================

    3.Spring 인터셉터를 사용하면 유용한 Handler에 액세스 할 수 있습니다. 또한 Spring 인터셉터를 사용하면 뷰가 렌더링되기 전과 뷰가 렌더링 된 후에 로직을 실행할 수 있습니다.

    Spring 인터셉터를 사용하면 유용한 Handler에 액세스 할 수 있습니다. 또한 Spring 인터셉터를 사용하면 뷰가 렌더링되기 전과 뷰가 렌더링 된 후에 로직을 실행할 수 있습니다.

  4. from https://stackoverflow.com/questions/8000844/spring-handlerinterceptor-vs-servlet-filters by cc-by-sa and MIT license