객체의 라이프 사이클을 개발자가 아닌 스프링 컨테이너가 도맡음
객체 간 결합도를 줄여 가독성 향상, 유지보수 용이
컨테이너(IoC Container)
Bean을 담는 공간
빈 객체의 라이프라이클 관리, 빈 객체 간 의존성을 관리
Bean
재사용 가능한 소프트웨어 컴포넌트
인스턴스화되어 컨테이너에 등록된 객체
Scope
- Singleton> 기본 스코프. 시작과 종료까지 유지되는 가장 넓은 범위
- Prototype> 프로토타입 빈의 생성과 의존관계 주입까지만 관여하는 짧은 범위
Web
request> 웹 요청이 들어오고 나갈때까지 유지됨
session> 웹 세션이 생성되고 만료될 때까지 유지됨
application> servlet context와 동일 범위로 유지됨
DI
DI(의존성 주입. Dependency Injection)라고도 함
IoC원칙을 구현하기 위해 사용되는 방법
주입 방법
constructor
setter
field
method
참고
https://docs.spring.io/spring-framework/reference/core/beans/factory-scopes.html