작성
·
28
0
해당 질문 답변에서
스프링 부트 로드시 서블릿들이 빈으로 등록된다고 하는데
@ServletComponentScan
을 사용하면 스프링 부트가 @WebServlet
애노테이션이 붙은 서블릿을 자동으로 스캔하고 서블릿 컨테이너에 등록한다고 알고 있는데 스프링 빈으로도 등록되는 건가요??
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
대영님께서 물어보신 내용은 @ServletComponentScan
어노테이션과 스프링 부트가 제공하는 서블릿 자동 등록 메커니즘에 관련된 것입니다.
@ServletComponentScan
어노테이션은 @WebServlet
, @WebFilter
, @WebListener
등의 서블릿 컴포넌트를 스캔하여 서블릿 컨테이너에 자동으로 등록해 줍니다. 이와 같은 구성은 서블릿 컨테이너(Tomcat 등)에 의해서 서블릿이 인식되도록 도와주며, 스프링 빈으로 등록되는 것은 아닙니다.
스프링 부트에서는 내장된 서블릿 컨테이너를 사용하여 애플리케이션이 실행될 때 자동으로 DispatcherServlet
과 같은 기본 서블릿을 등록합니다. 이러한 서블릿들은 스프링 빈 컨테이너와 상호작용할 수 있도록 추가적인 설정이 이루어질 수 있지만, 기본적으로는 서블릿 컨테이너에 의해 관리됩니다.
만약 서블릿을 스프링 컨텍스트에서 관리되는 빈으로 등록하고 싶다면, 일반적인 스프링 빈 등록 방식을 통해 수동으로 설정해야 합니다.
이와 관련된 자세한 동작 방식을 아래의 링크에서 찾아보실 수 있습니다:
- Spring 공식 가이드: 서블릿, 필터 및 리스너 등록
- DispatcherServlet 자동 등록
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.