약간의 복습시간.
💡 빈(Bean)이란?
- 스프링에서 빈(Bean)이란 "자바 객체"를 말한다.
💡 근데 왜 Bean이라고 불러?
- 정확히 말하면 "자바 객체 > Bean"이다.
💡 Bean과 자바 객체는 뭐가 다른데?
- Bean은 스프링 Ioc 컨테이너가 관리하는 자바 객체다.
- 자바 객체는 스프링 Ioc 컨테이너가 관리하지 않는 객체도 포함된다.
결론
우리는 스프링 빈으로Car클래스
를 등록해서 →Car객체
를 스프링 빈 + 싱글톤으로 사용함
DTO를 사용하는 이유는 (DTO: 데이터 전송을 담당) (어떤 API요청이이나 응답에 필요한 정보만 담아서 딱딱 전달해주기 위해서)
💡 어떤 객체에 스프링 컨테이너가 또 다른 객체와 의존성을 맺어주는 행위
예시:
<Gun.java>
public class Gun {
...
...
}
<Soldier.java>
public class Soldier {
private Gun gun;
public Soldier() {
gun = new Gun();
}
}
<Gun.java>
@Component // 스프링 컨테이너에 Bean으로 등록
public class Gun {
...
...
}
<Soldier.java>
public class Soldier {
@Autowired // 스프링 컨테이너에 있는 Gun 타입의 Bean을 주입
private Gun gun;
}
💡 스프링 컨테이너가 개발자 대신 Bean들을 관리(제어)해주는 행위
그냥 이분이 너무 명확하게 설명을 잘 해놓으셨다. 이거보고 공부하자