예제로 배우는 스프링 입문
예제로 배우는 스프링 입문
@GetMapping("/context") public String context() { return "bean " + applicationContext.getBean(OwnerController.class); }
class OwnerController { private OwnerRepository repo; public OwnerController(OwnerRepository repo) { this.repo = repo; } // repo를 사용합니다. }
IoC(Inversion of Control) - ApplicationContext(BeanFactory)
내가 사용할 의존성을 누군가 알아서 주겠지
Bean을 만들고 엮어주며 제공
DI(Depedency Injection)
의존성 주입
Bean끼리만 의존성 주입이가능
ApplicationContext Hash값 보기
@GetMapping("/context") public String context() { return "bean " + applicationContext.getBean(OwnerController.class); }
Hash값
빈설정
이름 또는 ID
타입
스코프 객체 하나를 애플리케이션 전반에서 재사용(새로 만든지 않음)
내가 이해한 IoC와 DI
객체의 생성은 Spring Container에 맡기고, DI(Dependency Injection)을 통해 객체를 주입받아서 사용하여 '생성'과 '사용'을 분리해서 이용하기 때문에 객체지향 5개원칙 중 단일책임 원칙, 개방-폐쇄의 원칙 준수 가능
from http://rlawls1991.tistory.com/25 by ccl(A) rewrite - 2020-03-12 00:54:23
댓글
댓글 쓰기