Java/Spring framework
Spring framework core (1) IoC Container와 Bean
감동이중요해
2020. 1. 5. 23:32
IoC Container, Bean
IoC
- DI(Dependency Injection)이라고도 한다. 의존 객체를 직접 만드는게 아니라 주입받아 사용받는 것을 의미
Spring IoC Container
-
BeanFactory
- Reference
- IoC의 최상위 인터페이스이며, Bean의 라이프 사이클을 관리한다.
- Bean 정의를 읽으며, Bean을 구성하고 앱에 전반적으로 제공한다.
-
ApplicationContext
- 가장 많이 사용하는 BeanFactory의 하위 Interface
- 이벤트 퍼블리셔, 환경설정, 메시지소스(다국화), Resource 로딩 등 수행
Bean
- IoC Container에서 관리하는 객체
- Spring단에서 의존성을 관리한다.
- 특정 객체의 의존성을 다른 의존성으로 쉽게 대체할 수 있다.
- Scope 정책이 존재
- Singleton : 1개의 객체만 인스턴스로 사용 (Default)
- prototype : 매번 다른 인스턴스로 사용
- Lifecycle interface가 존재
소스코드
https://github.com/dhmin5693/Spring-core-study/tree/master/Bean