본문 바로가기

Spring

[spring] Singleton 빈과 NonSingleton 빈

Spring에서는 기본적으로 Singleton으로 빈을 관리한다.
그렇다는 것은 하나의 웹 어플리케이션에서 공통으로 참조 할 수 있는 빈들의 저장소가 있어야 한다는
뜻일 것이다..
Spring 프레임워크에서 어플리케이션 저장소 역할을 하는 클래스가
ApplicationContext이다. (BeanFactory를 구현한다)

웹 어플리케이션은 하나의 ServletContext를 인스턴스로 가지기 때문에
애플리케이션 전체에서 사용할 전역 변수 관리를 위해 ServletContext를 이용한다.
Spring역시 ApplicationContext를 웹 어플리케이션에서 하나의 저장소로
사용하기 위해서,

ApplicationsContext를 ServletContext의 속성으로 추가한다.
이것은 나중에 WebApplicationContextUtils를 이용해서 접근이 가능하다.