필터 질문 드립니다.
414
작성한 질문수 33
스프링에서는 필터말고 인터셉터라는 기능도 제공하는 것으로 알고 있는데
인터셉터가 더 제공하는 기능이 많고 편리하다고 하더라구요.
필터와 인터셉터중에 어ㄷ느 것을 사용할 지는 그냥 개발하는 사람의 선택인가요?
답변 2
2
안녕하세요, 이도원입니다.
스프링에서 공통된 처리를 위해 Filter, Interceptor, AOP를 사용하실 수 있습니다. 이들은 실행되는 순서 및 위치에 따라 용도가 달라지게 됩니다. Interceptor와 Filter는 Servlet 단위에서 실행되면, AOP는 Spring 내에서 Proxy 형태로 실행됩니다. 실행 순서도 아래의 이미지와 같이 Filter가 가장 바깥쪽에 위치하고 AOP가 가장 안쪽에 위치합니다. Filter는 Request/Response에 대해 필요한 처리를 할 수 있으며, Interceptor는 Request에 대한 사전처리와 사후처리를 담당할 수 있습니다. 말씀하신 것 처럼 서로 처리할 수 있는 업무가 비슷할 수 있지만, 요청에 대한 자체를 필터링 하는 것과 요청을 처리하면서 필요한 사전 작업과 또는 사후 작업을 처리하는 것은 다른 용도로 구분할 수 있습니다. 예를 들어, 어떤 요청 중 유료 회원에 대한 요청만 처리하도록 Filter를 거친 다음, 요청 처리가 끝난 다음, 공통된 로그를 출력하는 작업을 (사후 작업) Interceptor에서 처리할 수 있을 것 같습니다.

https://www.baeldung.com/spring-mvc-handlerinterceptor-vs-filter
감사합니다.
0
감사합니다. 도원님 좋은 강의 잘 듣고 있습니다. 혹시 깃허브 코드 말고
강의 내용을 정리한 pdf 파일이나 강의하실 때 사용하시는 ppt를 배포하실 계획이 있으신 지 여쭙고 싶습니다.
0
해당 강의에서 사용하는 SimpleBeanPropertyFilter는 jackson 라이브러리가 응답을 만드는 과정에서 사용하는 객체로 이름이 필터로 끝나지만 질문자님이 궁금해하시는 필터와는 다른 개념이 아닌가요 ??
JPA
0
63
1
jpa dependency를 추가하고 SecurityConfig클래스에서 오류가 납니다.
0
72
1
웹 브라우저 400 bad request
0
73
1
@Size는 되는데 @Past는 안 됩니다.
0
65
1
pdf 자료는 없나요?
0
76
2
locale 정보가 null 이면 무조건 messages_ko.properties이 호출 되는 문제
0
91
2
Swagger 강의, Unable to infer base url 이거 뜨시는 분들 도움되시라고
0
122
1
강의에서나온 화면 피피티
0
161
1
HelloWorldBean 관련 에러
0
189
2
Swagger API 3.x 오류..
0
223
1
java: variable message not initialized in the default constructor 에러는 어찌하면 좋을까요?
1
283
1
현재 GIT에 올리신 소스를 실행해봤습니다.
0
191
2
고양이 소리가 귀엽네요 !!
0
140
2
git에서 소스받고 실습중인데
0
120
1
post가 안되요
0
107
1
한국어 같은 경우 언어코드인 messages_ko.properties 로 생성하는게 더 좋지 않나요?
0
169
2
리턴타입으로서 EntityModel<User> 와 ResponseEntity질문
0
107
1
예외처리쪽 관련 질문있습니다.
0
161
2
엔티티가 바로 응답으로 나가도 되나요??
0
230
2
안녕하세여 Cannot invoke "co.kr.joneconsulting.resfulservice.repository.PostRepository.save(Object)" because "this.postRepository" is null
0
142
2
사용자 등록하고 나서 H2 에서 보면 신규 사용자의 password, ssn 이 null 로 되어 있습니다.
0
144
2
ApplictionContext 질문
0
196
2
롬북이 안먹히는것같아요
0
159
1
인텔리제이에서스프링부트 파일 실행하면
0
242
1





