자바의 Filter란?
- 자바에서 Filter는 웹 애플리케이션에서 요청과 응답을 처리하는데 사용되는 객체이다.
주요 특징:
- 요청 및 응답 필터링: Filter는 서블릿이 요청을 처리하기 전에 요청을 가로채서 필터링하거나, 서블릿이 응답을 처리한 후에 응답을 가로채서 수정할 수 있다.
- 체이닝: 여러 개의 필터를 정의하고, 이를 체인처럼 연결하여 순차적으로 처리할 수 있다. 각 필터는 다른 필터가 처리한 결과를 받아들일 수 있다.
- Web.xml 또는 어노테이션을 통한 설정: 필터는 web.xml에서 정의하거나, 자바에서 어노테이션을 사용해 설정할 수 있다.
주요 메서드:
- init(FilterConfig filterConfig):
- 필터가 초기화될 때 호출된다. 필터 설정을 읽고 초기화 작업을 수행한다
- doFilter(ServletRequest request, ServletResponse response, FilterChain chain):
- 실제 요청과 응답을 처리하는 메서드. 이 메서드에서 요청을 필터링하거나 응답을 수정할 수 있다
- FilterChain을 사용해 다음 필터나 서블릿으로 요청을 전달할 수 있다.
- destroy():
- 필터가 종료될 때 호출. 리소스를 해제하는 등의 종료 작업을 수행할 수 있다.
활용 예시:
- 로깅: 요청과 응답을 로그로 기록
- 인증 및 권한 검사: 사용자 인증을 확인하고, 인증되지 않은 사용자에게 접근을 막는 기능
- 입력 값 검증: 사용자가 입력한 데이터의 유효성 검사
- 응답 압축: 서버에서 보내는 응답을 압축하여 성능 향상
'Java > SpringBoot' 카테고리의 다른 글
영속성(Persistence)이란 무엇일까? (0) | 2025.02.03 |
---|---|
Security Filter Chain (0) | 2025.01.31 |
인증과 인가 (0) | 2025.01.30 |
JWT 로그인 테스트-4 (0) | 2025.01.22 |
JWT 로그인 테스트-3 (0) | 2025.01.21 |