JAVA Spring의 원리는 의존성 주입으로부터 시작된다고 할 수 있다.
DI(Dependency Injection)즉, 의존성 주입 방법에는 크게 3가지가 있다.
사실 결국 생성자 주입방식을 쓰는 것이 좋다로 귀결된다.
다른 사람의 소스코드를 리뷰 중, "어? 뭐지 이건? 내가 아는 것과는 다른데?" 하는 경우에 똑같은 DI(Dependency Injection)임을 의미한다는 것을 이해하기만 하면 된다고 생각한다.
필드 주입이란, 생성자를 굳이 생성해서 매개변수로 DI에 필요한 스프링 빈을 받아 다시 할당해주는 것이 아니라 DI가 필요한 객체를 선엄함과 동시에 자동으로 DI를 수행하는 것이다.
말이 참 어렵게 하는 재주가 있는데, 쉽게 생각하면 변수 선하면서 값 할당도 동시에 일어나도록 하는 것이다.
문장도 되게 간단한데, 기존 생성자 주입에서 사용하는 생성자 구문을 싹 날리고, 변수 옆에 @Autowired를 써주면 끝이다.
하지만 생성자 주입에 비해 소스코드르 작성하는 사람이 직접적으로 관여할 수 있는 부분이 없기에 사용하지 않는다.