공부/Jsp,Servlet

[servlet] filter 정리

JangGiraffe 2016. 6. 8. 12:38

 

필터

'HTTP 요청과 응답을 변경할 수 있는 재사용 가능한 클래스'이다.

최종 자원(jsp,servlet 등)과 응답 사이에 위치해 요청 결과를 알맞게 변경할 수 있다.

web.xml 혹은 어노테이션으로 등록할 수 있다.

응용 : 사용자 인증, 캐싱 필터, 자원 접근에 대한 로깅 , 응답 데이터 변환, 공통 기능 실행 등

Spring framework의 intercepter와 비슷한 기능. intercepter의 경우 spring에서 관리되기 때문에 스프링 내의 모든 자원을 모두 활용할 수 있다.

 

사용처

캐릭터 인코딩처리

로그인체크

클라이언트의 요청 변경(Wrapper 활용)

 

Filter 인터페이스의 메소드

init : 필터를 초기화 할 때 호출된다.

doFilter : 필터의 기능을 수행한다.

destroy : 필터가 웹 컨테이너에서 삭제될 때 호출된다. (- 주로 필터가 사용한 자원 반납)

 

 

doFilter 메소드

1. request 파라미터를 이용하여 요청의 필터 작업 수행

2. chain.doFilter(request,response); 체인의 다음 필터 처리

3. response를 이용하여 응답의 필터링 작업 수행

 

 

 

 

↓doFilter 메소드

 

↓ JSP 페이지

 

↓JSP 페이지 로딩시 결과

 

 

 

반응형