TIL

interceptor vs Filter

하얀잔디 2022. 10. 27. 10:20

 

1.filter:

url 패턴에 맞는 모든 요청에 대해 부가작업을 처리할 수 있는 기능을 제공

 

2. Dispatcher Servlet

HTTP 프로토콜로 들어오는 모든 요청을 가장 먼저 받아 적합한 컨트롤러에 위임해주는 프론트 컨트롤러

 

3.Interceptor

디스패처 서블릿(Dispatcher Servlet)이 컨트롤러를 호출하기 전과 후에 요청과 응답을 참조하거나 가공할 수 있는 기능을 제공

(실제로 여기서 바로 Controller을 호출하진 않음)

 

 

 

사실 궁금했따.

아니 filter랑 interceptor 차이가 뭐지? 그냥 중간에서 이러쿵 저러쿵 하는건 비슷한거 아닌가?

 

맞다.

 

필터

 

- 보안 및 인증/인가 관련 작업

- 모든 요청에 대한 로깅/검사

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

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

 

즉 웹 어플리케이션 전반적으로 사용되는 기능을 구현하기에 적합!

 

InterCeptor

 

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

- API 호출에 대한 로깅 /검사

- Controller로 넘겨주는 정보의 가공

 

 

즉 클라이언트의 요청과 관련되어 전역적으로 처리해야 하는 작업을 처리함.

 

 

공통점 : 비즈니스 로직과 분리되어 특정 요구사항(보안,인증,인코딩) 등을 만족시켜야 할 때 적용

'TIL' 카테고리의 다른 글

자바 Static 왜 쓰는지.  (0) 2022.11.03
ER 다이어그램 정리  (0) 2022.11.02
Spring Security Form 인증 과정  (0) 2022.10.26
CORS란  (0) 2022.10.25
WebSocket 이전의 Client와 Server 간의 통신방법  (0) 2022.10.24