Spring IoC 컨테이너가 관리하는 자바 객체로서 컨테이너에 의해 생명주기가 관리되는 객체
Spring IoC 컨테이너 : bean을 관리하는 객체
의존성 주입이 필요한 객체를 bean으로 등록함으로써 Spring IoC 컨테이너가 객체의 생성과 의존성 주입을 관리하도록 함
Spring IoC 컨테이너에서 싱글톤 패턴을 통한 의존성 주입으로 동시성 문제를 해결해줌
어노테이션인 @Bean
을 사용하거나 xml 설정
을 통해 일반 객체를 bean으로 등록
<!-- A simple bean definition -->
<bean id="..." class="..."></bean>
<!-- A bean definition with scope-->
<bean id="..." class="..." scope="singleton"></bean>
<!-- A bean definition with property -->
<bean id="..." class="...">
<property name="message" value="Hello World!"/>
</bean>
<!-- A bean definition with initialization method -->
<bean id="..." class="..." init-method="..."></bean>
: 객체 생성 -> 의존 설정 -> 초기화 -> 사용 -> 소멸`
bean으로 등록할 수 있는 어노테이션들과 설정파일을 읽어 IoC컨테이너 안에 bean으로 등록
Singleton Registry
: 싱글톤 패턴의 단점을 보완
: key와 value형태로 데이터가 저장됨
key : bean의 이름
value : 객체
https://developer-ellen.tistory.com/198?category=921298
https://dev-coco.tistory.com/170