스프링 2강 - DI(의존성 주입)와 IOC 컨테이너
November 07, 2018
2-1 STS 플러그인 설치 (3.x.x)
- STS 4 이상은 Spring legacy project가 없다. (스프링 부트만 존재)
2-2 스프링 프로젝트 만들기
-
new - Project - Spring legacy project - simple spring maven 선택
-
src/main/java 폴더에는 java class 파일들
-
src/main/resource 폴더에는 xml등 여러 자료들
-
소스코드는 자바와 동일
2-3 DI(Dependency Injection)와 IOC 컨테이너
- 요게 스프링의 핵심
- DI
- 객체를 자바 내에서 생성하는 것이 아니라 외부에서(xml혹은 @Annotation)생성해서 주입
- 클래스 파일을 최대한 수정하지 않고 객체를 관리하기 쉽게 하기 위함
- 지금은 감이 안올 수 있지만 큰 규모의 프로젝트를 할 때 유리 (모를 때 Interface를 왜쓰지? 하는것 처럼)
- IOC 컨테이너
- 인터페이스를 통해 객체들을 여러개의 부품으로 만든다
- IOC는 부품(객체)들을 담고있는 컨테이너
- A객체가 IOC가 가지고 있는 부품 중에서 사용하고 싶은 부품을 선택해서 객체를 주입받을 수 있다.
- 결국 스프링은
- 부품을 생성하고 조립하는 라이브러리 집합체
참고자료
- 스프링과정2강 블스(김명호 강사)