[내배캠 Spring TIL] Filter 썸네일

[내배캠 Spring TIL] Filter

Spring
2024년 8월 28일

Filter #

Filter는 HTTP 요청 및 응답을 가로채서 처리하는 데 사용된다. 클라이언트의 요청이 서블릿에 도달하기 전에, 또는 서블릿에서 응답이 클라이언트로 전달되기 전에 특정 로직을 수행할 수 있게 해준다. 주로 인증, 인가, 로깅 등의 목적으로 사용된다.

동작 과정 #

doFilter 메서드 #

Filter 인터페이스에서 가장 중요한 메서드로, 필터가 실제로 작업을 수행하는 부분이다.

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
  throws IOException, ServletException {
  // 전처리 작업
  chain.doFilter(request, response); // 다음 필터로 요청 전달
  // 후처리 작업
}

FilterChain #

여러 필터가 있을 때 필터들을 체인처럼 연결해서 순차적으로 호출하는 역할을 한다. chain.doFilter()를 호출하여 다음 필터 또는 최종 서블릿으로 요청을 전달한다.

등록방법 #

  • @Component: Spring Boot에서는 필터 클래스를 @Component로 등록하여 필터를 적용할 수 있다.
  • @Order: 여러 개의 필터가 있을 경우 필터의 실행 순서를 제어할 수 있다. @Order 어노테이션을 사용하여 우선순위를 설정할 수 있으며, 값이 낮을수록 높은 우선순위를 가진다.
@Component
@Order(1)
public class CustomFilter implements Filter {
    // 필터 구현
}

최근 게시물

김진근 • © 2025