728x90
반응형
Spring IoC (Inversion of control)

1. DL (Dependency LookUp)
- 컨테이너가 lookup context를 통해서 필요한 자원이나 객체를 얻음
- 캐스팅과 예외처리가 필요
2. DI (Dependency Injection)
- 객체에 lookup를 사용하는 것이 아닌 컨테이너가 직접 의존 구조를 Object에 설정해줌
- 객체가 컨테이너의 존재를 알 필요가 없음
Container
- 객체 생성, 사용, 소멸에 해당하는 라이프사이클을 담당함
- 라이프 사이클 관리, Dependecy 객체 제공, Thread 관리 등의 기능
- 비즈니스 로직 외 부가기능을 독립적으로 관리하기 위해 필요함
- 서비스 look up이나 Configuration에 대한 일관성을 갖게 해줌
1. IoC Container
- 오브젝트의 생성, 관계설정, 사용, 제거 등 작업을 독립된 컨테이너가 담당, 제어권을 가짐
- BeanFactory, ApplicationContext가 존재
2. Spring DI Container

1) BeanFactory
- Bean 등록, 생성, 조회, 반환 관리(생명주기 관리)
- getBean() method가 정의되어 있음
2) ApplicationContext
- BeanFactory의 기능에 스프링의 부가 기능을 가짐
IoC의 개념
- 객체 생성을 Container에게 위임하여 처리함 -> 객체 간의 결합도를 떨어트릴 수 있음
- 컨테이너를 사용하면 실행시점(Runtime) 시에 클래스 간의 관계가 형성됨
728x90
'개발일지 > SPRING' 카테고리의 다른 글
[Spring Boot] 스프링 부트 프로젝트 생성 (0) | 2023.11.27 |
---|---|
[Spring] 스프링 빈 설정과 라이프 사이클 (1) | 2023.10.23 |
[Spring] Spring 핵심 개념, 모듈 (0) | 2023.10.22 |
[JSP] JSP 내에서 노출 예약걸기 (0) | 2021.09.08 |
[SPRING] DI(Dependency Injection) 설정 방법 (0) | 2021.06.12 |