의존성 주입
-
Spring Boot - DI(Dependency Injection)의 세 가지 방법Framework & Library/Spring Boot 2023. 2. 5. 18:28
DI(Dependency Injection) 세 가지 방법 Field Injection(필드 주입) @Controller public class SampleController { @Autowired private SampleService sampleService; } ㆍ 필드 주입 방식은 의존성 주입을 받을 변수 선언부에 위와 같이 @Autowired 애너테이션을 선언함으로써, 사용이 가능하다. ㆍ 코드가 간결하고 편하지만, 의존관계를 정확하게 파악하기 힘들다. ㆍ 필드 주입 시 final 키워드를 선언하지 못하기 때문에, 객체가 변할 수 있다는 단점이 존재한다. ㆍ 주입이 동시에 일어나는 경우 순환참조 에러를 발생시킨다. Setter Injection(수정자 주입) @Controller public c..
-
Spring Boot - IoC와 DIFramework & Library/Spring Boot 2021. 9. 23. 17:54
IoC(Inversion of Cotainer) IoC란? - IoC는 Inversoin of Container의 약자로, 제어의 역전이란 의미를 가지고 있다. - 제어의 역전이란 객체의 생명주기 관리를 컨테이너가 도맡아, 제어권이 개발자에서 컨테이너로 넘어가게 되어 제어권의 흐름이 바뀌었다는 것을 뜻한다. - 즉, 개발자가 직접 new 키워드를 통해 인스턴스를 생성하고, 메서드를 호출하는 작업들을 스프링에 위임하는 것이다. DI(Dependency Injection) DI란? - DI란 의존 관계 주입이라 하고, 어떤 객체가 사용하는 의존 객체를 내부에서 직접 생성하는 것이 아니라 외부에서 주입하는 방식을 말한다. DI의 사용 이유 - 객체를 주입받는다는 것은 외부에서 생성한 객체를 넘겨받는 것이기 때..