Filter API

2020/JSP SERVLET 2019. 12. 9. 20:31
반응형

필터란?

  브라우저에서 서블릿에 요청하거나 응답할 때 미리 요청이나 응답과 관련해 여러가지 작업을 처리하는 기능입니다.

  프로그래밍을 하다가 한글 인코딩처럼 각 서블릿에 반복적으로 처리해야 하는 작업이 있을 수 있는데, 이런 경우 서블릿의 공통 작업을 미리 필터에서 처리하면 반복해서 작업할 필요가 없겠죠.

 

필터 기능 수행 과정

 

 

  위의 코드는 지금까지 우리가 해왔던 코드의 일부분입니다.

  이처럼 웹 페이지에서 입력한 한글을 서블릿에 전달 하려면 setCharacterEncoding() 메서드를 이용해 한글 인코딩 설정을 서블릿마다 상단에 추가해야 했습니다. 하지만 모든 서블릿에서 공통으로 처리하는 작업을 먼저 필터에서 처리해 주면 편리하겠죠.

 

필터는 용도에 따라 크에 요청 필터와 응답필터로 나뉘며 다음과 같은 API가 있습니다.

요청필터

  • 사용자 인증 및 권한 검사
  • 요청 시 요청 관련 로그 작업
  • 인코딩 기능

응답필터

  • 응답 결과에 대한 암호화 작업
  • 서비스 시간 측정

 

필터관련 API

  • javax.servlet.Filter
  • javax.servlet.FilterChain
  • javax.servlet.FilterConfig

Filter 인터페이스에 선언된 메서드

메서드 기능
destroy() 필터 소멸 시 컨테이너에 의해 호출되어 종료 작업을 수행
doFilter() 요청/응답 시 컨테이너에 의해 호출되어 기능 수행
init() 필터 생성 시 컨테이너에 의해 호출되어 초기화 작업

FilterConfig의 메서드

 

메서드 기능
getFilterName()  필터 이름을 반환합니다.
getInitParameter(String name)  매개변수 name에 대한 값을 반환합니다. 
getServletContext()  서블릿 컨텍스트 객체를 반환합니다.

 

다음 글에서 사용자 정의필터를 만들어 보고 직접 코딩하여 보겠습니다.

반응형

'2020 > JSP SERVLET' 카테고리의 다른 글

Servlet Listener API  (0) 2019.12.09
Filter API 사용자 정의 필터 만들기  (0) 2019.12.09
서블릿 URL pattern  (0) 2019.12.09
서블릭 속성과 스코프(Scope)  (0) 2019.12.09
세션 로그인 session login  (0) 2019.12.09
블로그 이미지

꽃꽂이하는개발자

,