2020. 4. 21. 00:42
내용 출처
의존 주입 (Dependency Injection)
프로그래밍에서 객체를 만들어서 외부에서 따로 주입하는 방식
제일 안좋은 프로그램 : 변경이 쉽지 않은 프로그램
1. 배터리 일체형 - 장난감 자동차 (배터리가 떨어지면 장난감을 새로 구입해야함) 의존성이 큼
생성자에서 객체에 주입
public class ElectronicCarToy {
private Battery battery;
public ElectroniCarToy() {
battery = new NormalBattery();
}
}
2. 배터리 분리형
setter 메서드에서 객체에 주입
public class ElectronicRobotToy {
private Battery battery;
public ElectronicRobotToy() {
}
public void setBattery(Battery battery) {
this.battery = battery;
}
}
3. 배터리 분리형 - 공장에서 미리 배터리를 넣어놓고, 원할 때 교체
public class ElectronicRobotToy {
private Battery battery;
public ElectronicRobotToy() {
this.battery = battery;
}
public void setBattery(Battery battery) {
this.battery = battery;
}
}
스프링에서의 의존주입
스프링 컨테이너에서 주입하고 의존하는 관계
1. 스프링 DI 설정
ㄱ) 스프링 설정파일 (XML) 파일
ㄴ) GenericXmlApplicationContext 로 파일을 읽음
ㄷ) 스프링 컨테이너에서 큰 객체에 작은 객체가 들어있는 것을 보고 (주입이 되어있다고 함)
ㄹ) 사용할 때는 getBean라고 사용하고, 객체를 생성할 때는 Bean사용
'Spring Framework > Spring' 카테고리의 다른 글
[Spring] 컨트롤러에서 파라미터를 받는 방법 (0) | 2021.01.07 |
---|---|
[spring] 2. 한글 처리 filter (web.xml) (0) | 2020.06.09 |
[Spring] 클래스 컨테이너 (0) | 2020.04.20 |
[spring] - pom.xml 의 dependency (0) | 2020.04.20 |
[spring] - 스프링 프로젝트 생성 (0) | 2020.04.19 |