IOC

    예제로 배우는 스프링 프레임워크 입문 - IOC Container

    IoC (Inversion of Control) 컨테이너 ApplicationContext (BeanFactory) 빈(bean)을 만들고 엮어주며 제공해준다. 빈 설정 이름 또는 ID 타입 스코프 아이러니하게도 컨테이너를 직접 쓸 일은 많지 않다. @Controller class OwnerController { private static final String VIEWS_OWNER_CREATE_OR_UPDATE_FORM = "owners/createOrUpdateOwnerForm"; private final OwnerRepository owners; private final VisitRepository visits; private final ApplicationContext applicationCont..

    예제로 배우는 스프링 프레임워크 입문 - IOC

    Inversion of Control 제어권이 뒤바꼈다고? 일반적인 (의존성에 대한) 제어권: “내가 사용할 의존성은 내가 만든다.” class OwnerController { private OwnerRepository repository = new OwnerRepository(); } IoC: “내가 사용할 의존성을 누군가 알아서 주겠지” 내가 사용할 의존성의 타입(또는 인터페이스)만 맞으면 어떤거든 상관없다. 그래야 내 코드 테스트 하기도 편하지. class OwnerController { private OwnerRepository repo; public OwnerController(OwnerRepository repo) { this.repo = repo; } // repo를 사용합니다. } clas..