[Spring Boot] DI 구현 방법 3가지
·
개발/Spring Boot
DI를 구현하는 방법은 필드주입, 세터 주입, 생성자 주입으로 3가지가 있다. 이 3가지에 대해서 간단하게 정리하려고 한다. 먼저 DI를 하면 외부에서 의존성을 주입받기 때문에 (1) 테스트가 용이해지고 (2) 객체간 결합도를 낮추고 (3) 코드의 재사용성을 높인다. 1. 필드 주입 @Controller public class FoodController { @Autowired private FoodService foodService; } 필드에 @Autowired 어노테이션만 붙여주면 의존성이 주입된다. 코드가 간결하지만 프레임워크에 의존적이고 외부에서 수정이 불가하다. 외부에서 수정이 불가하다는 것은 테스트 코드 작성시 객체를 수정수 없다는 말이 된다. 2. 세터 주입 @Controller public..