Spring Boot/Spring Core

Spring Core Bean Scope

최-코드 2024. 7. 21. 02:29

Bean Scope : 빈의 생명 주기, 몇 개의 인스턴스가 생성되었는지, 빈이 어떻게 공유되는지를 의미한다. 스프링의 기본 스코프는 싱글톤이다. 

 

싱글톤 : 하나의 빈 인스턴스만 생성하고 이를 메모리에 캐시하는 것을 말한다. 따라서 해당 클래스를 참조할 때 같은 인스턴스만을 반환하고, 모든 의존성 주입은 동일한 빈을 참조하게 된다.

 

프로토타입 : 싱글톤 외에 설정할 수 있는 스코프로서, 각 컨테이너 요청이나 주입 지점마다 새로운 빈 인스턴스를 생성하는 것을 말한다.

 

Scope를 적용하는 방법은 특정 Scope를 적용한 클래스에 @Scope 어노테이션을 사용하는 것이다. 양식은 아래와 같다.

@Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)