Spring
IOC
KimJye
2020. 1. 14. 15:13
Inversion Of Control의 약자로 제어의 역전이라는 뜻이다.
원래 의존성에 대한 제어권은 본인에게 있다.
Class OwnerController {
private OwnerRepository ownerRepository = new OwnerRepository();
}
IOC는 의존성을 내가 관리하지 않고 나 외의 누군가가 밖에서 의존성을 주입해주는 형태다.
Class OwnerController {
private OwnerRepository ownerRepository;
public OwnerController(OwnerRepository ownerRepository) {
this.ownerRepository = ownerRepository;
}
}
IOC Container
스프링 프레임웤은 IOC 컨테이너를 제공한다.
이 컨테이너의 가장 핵심적인 인터페이스는 ApplicationContext다.
ApplicationContext
빈을 생성하고 만든 빈들의 의존성을 관리해준다.