시큐리티 필터 적용할때도 적용할 수 있겠다!!!!!!!!!!
filter 에 사용 될 url에 대한 필터를 적용하려면
filter에서 모든 url을 확인하려면
출처 : https://taetaetae.github.io/2020/04/06/spring-boot-filter/
나의 경우
url에 대한 필터를 적용해야 하면서
Filter에서 bean 주입 받아 사용할 객체가 몇개 있었기 때문에
@Component 어노테이션을 붙여주어야 했다.
그래서 FilterConfig 파일을 만들고 FilterRegistrationBean 을 사용하는 방법을 택함!
글을 작성하고나서 조금 더 찾아보니
@ServletComponentScan 은
base package 하위에 존재하는 서블릿 컴포넌트인 서블릿, 필터, 리스너
를 모두 찾아
bean으로 등록해준다고 한다.
다만 생성한 필터가 스캔 당하려면 @WebFilter
어노테이션을 부착하고 있어야 한다.
내장 톰캣 사용시에 적용되는 부분으로
Spring boot는 내장 톰캣이 기본이기 때문에
기본 동작하는 부분을 확인할 수 있다.
출처 : https://findmypiece.tistory.com/57
내 프로젝트에도
@WebFilter + @ServletComponentScan 조합으로 사용했어도 잘 동작했을 것이다.
하지만 base package 하위의 모든 컴포넌트를 조사하는 작업이 별도로 추가되지 않을까?
뭔가 성능에 쬐끔 더 안좋을것 같다는 생각을 해본다 😶🌫️
추가로
Filter를 사용하면
urlPattern 에 /**/customer/**
와 같은 형태는 작성할 수 없다고 한다.
이런 형태를 사용하려면 Interceptor를 사용해야 한다.