예제로 배우는 스프링 입문

예제로 배우는 스프링 입문

@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

댓글

이 블로그의 인기 게시물

데이터 바인딩 추상화 - propertyEditor

[샤니마스 SPRING PARTY2020] THE IDOLM @ STER SHINY COLORS SPRING...

Spring Web Form