필터 이해하기
필터는 클라이언트로부터 서블릿이 요청되어 수행될 때 필터링 기능을 제공하기 위한 기술입니다. 필터가 수행되는 시점은 요청된 서블릿이 수행되기 전과 후이며, 필터 기능을 사용하여 서블릿의 처리와 유지보수를 더욱 효과적으로 처리할 수 있습니다.
필터로 구현 가능한 기능
- 서블릿이 호출되기 전에 서블릿 요청을 가로채는 기능
- 서블릿이 호출되기 전에 요청 내용을 점검하는 기능
- 요청 헤더의 수정과 조정 기능
- 서블릿이 호출된 후에 서블릿 응답을 가로채는 기능
- 응답 헤더의 수정와 조정가능
필터 기능을 활용하여 처리하는 기능 중에 대표적인 것이 '로그 기록'과 '한글 처리'입니다.
한글 처리는 여러 페이지에서 수행해야 하는 작업이지만, 필터를 활용하면 하나의 필터로 여러개의 서블릿에 대하여 필터링하여 한글 처리를 수행할 수 있습니다. 만약 문자코드를 바꾸어야 할 경우가 생기면 각 서블릿마다 일일이 작업하지 않고도 관련 필터 하나만 수정하면 됩니다.
p247, [그림 7-2] 하나의 필터가 여러 개의 페이지 필터링
p248, [그림 7-3] 여러 개의 필터가 하나의 페이지 필터링