본문 바로가기

Spring_SpringBoot/이론

Filter, Interceptor

Filter

- Dispatcher Servlet에 요청이 전달되기 전/후에 url패턴에 맞는 모든 요청에 대해 부가작업을 할 수 있는 기능을 제공

  하게 된다. 필터는 스프링 범위 밖에서 처리가 되는 것이다. 즉 스프링 컨테이너가 아닌 웹 컨테이너에 의해 관리가

  되는 것이다. 아래의 그림을 보면 구조를 알 수 있다.

 

● 공통된 보안 및 인증/인가 관련 작업

● 모든 요청에 대한 로깅 또는 감사

● 이미지/데이터 압축 및 문자열 인코딩

● Spring과 분리되어야 하는 기능

 

Interceptor

- Spring이 제공하는 기술로써, 디스패처 서블릿(Dispatcher Servlet)이 컨트롤러를 호출하기 전과 후에 요청과

  응답을 참조하거나 가공할 수 있는 기능을 제공한다. Interceptor은 주로 posthandle(), prehandle()로 컨트롤러 전 후로 

  참조하게 된다.

 

● 세부적인 보안 및 인증/인가 공통 작업

● API 호출에 대한 로깅 또는 감사

● Controller로 넘겨주는 정보(데이터)의 가공

 

※ 필터와 인터셉터의 관한 이해를 위한 그림은 다음과 같다.

 

'Spring_SpringBoot > 이론' 카테고리의 다른 글

[ War ] vs [ Jar ]  (0) 2024.06.15
Redriect vs Forward  (0) 2024.06.14
[ System.out.println() ] VS [ logger.XXX ]  (0) 2024.06.11
@RequestMapping, @GetMapping, @PostMapping  (0) 2024.06.11
[ try-with-finall ] VS [ try-with-resource ]  (0) 2024.06.10