일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- error
- java프로그래밍
- 데이터
- Scanner
- 스캐너
- 반복문
- 백준
- for
- 알고리즘
- 파이썬프로그래밍기초
- 배열
- 유비쿼터스
- C언어
- 하드웨어
- MySQL
- Scanner class
- 변수
- Spring
- 1차원배열
- 스캐너클래스
- 함수
- IFELSE
- 자바
- 기본
- 자료구조
- IF
- 백준알고리즘
- IF문
- FOR문
- java
Archives
- Today
- Total
정리하고기록하자
Spring - IoC 본문
반응형
IoC란
IoC( 제어 반전 ) 이란 객체의 생성, 생명주기의 관리까지 모든 객체에 대한 제어권이 바뀌었다는 것을 의미한다.
( 직접 의존성은 생성하지 않고 누군가에 의해 주입받는다. 의존성 주입!)
이것이 '제어의 역전' 이라고 부른다.
IoC 컨테이너
스프링 프레임워크도 객체를 생성하고 관리하고 책임지고 의존성을 관리해주는 컨테이너가 있는데, 그것이 바로 IoC 컨테이너 이다.
public interface CarInterface {
public void makeCar();
}
public class Center {
public Center() {
System.out.println("--------영업시작합니다--------");
System.out.println("--------------------------");
}
public void makeCar(CarInterface car) {
System.out.println("--------자동차 수리 해요--------");
car.makeCar();
}
}
센터 생성자 생성 , makeCar 메서드 생성
public class Car implements CarInterface{
@Override
public void makeCar() {
// TODO Auto-generated method stub
System.out.println("--------첫번째 자동차 수리했어요 --------");
System.out.println("--------바퀴도 달아줬어요--------");
}
}
Car Class 에 CarInterface 를 implements 하고 makeCar 메서드를 소스를 작성한다.
public class Wheel implements CarInterface{
@Override
public void makeCar() {
// TODO Auto-generated method stub
System.out.println("--------두번째 자동차 수리했어요 --------");
System.out.println("--------여기도 바퀴 달아줬어요 --------");
}
}
Wheel Class 에 CarInterface 를 implements 하고 makeCar 메서드를 소스를 작성한다.
public class main {
public static void main(String[] args) {
// 메인 클래스는
// 카센터 라는 객체를 만들었다
Center center = new Center();
Car car = new Car();
Wheel wheel = new Wheel();
center.makeCar(car);
System.out.println("---한개 끝났구요");
center.makeCar(wheel);
System.out.println("---두개 끝났구요");
}
}
메인에서는 Center 클래스에 center 객체를 먼저 생성하고
CarClass, WhellClass에 각각의 객체를 가져와서 ( 외부에서 ) 이용을한다.
Center 클래스는 CarClass, WhellClass 클래스를 의존 하고있다.
이것이 의존 객체 이다.
생성자의 객체는 스프링에서는 빈 (Bean) 이라고 부른다.
반응형
'개발 상식' 카테고리의 다른 글
Spring - PSA (0) | 2022.05.02 |
---|---|
Spring - DI (0) | 2022.05.02 |
Spring - AOP (0) | 2022.04.30 |
JDK 1.7 -> 1.8 (0) | 2022.04.28 |
RESTful API (0) | 2022.03.14 |