인프런 커뮤니티 질문&답변

ygh님의 프로필 이미지
ygh

작성한 질문수

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

Hello 서블릿

안녕하세요! 질문이 있습니다.

작성

·

247

1

안녕하세요! 항상 좋은 강의 감사드립니다 :D

강의를 보면서 궁금한 점이 생겨 질문 드립니다.

Spring bean 같은 경우에는 @Configuration 대상 클래스에 대한 프록시 객체를 생성하여 싱글톤을 보장하여 Spring container에서 관리된다는 것으로 배웠는데요.

Servlet은 어떤식으로 Servlet Container내에서 싱글톤을 보장하는 것인가요??

답변 1

4

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. ygh님

먼저 스프링은 @Configuration와 무관하게 스프링 빈은 등록할 때 기본적으로 싱글톤으로 등록됩니다.

다만 빈 등록시 의존관계 주입이 필요한데 메서드 호출이 발생할 때, 순수 자바코드에서는 해당 코드를 직접 호출하니 실제 의존관계 주입을 받을 객체가 추가로 생성되어 버립니다. 그래서 @Configuration을 사용해서 프록시를 생성합니다.

이 부분에 대한 이해가 있다고 가정하고 답을 드리겠습니다.

(만약 이 부분에 대한 이해가 부족하시다면 중요한 내용이 해당 부분을 다시 복습하시길 바랍니다^^!)

서블릿은 서블릿끼리 의존관계 주입이 필요하지 않습니다. 그래서 이런 부분 없이 단순히 서블릿이라고 등록하면 서블릿 컨테이너가 싱글톤으로 관리해줍니다.

감사합니다.

ygh님의 프로필 이미지
ygh

작성한 질문수

질문하기