di2 SpringBoot Part1-3 1. Circular Dependency (원형 의존성) - 두 개 이상의 객체 간에 서로가 서로에 대해 의존하는 상황 - A -> B를 참조하는 동시에 B -> A를 참조 - BeanCurrentlyInCreationException 예외가 발생할 수 있다. Circular Dependency의 문제점 @Configuration class CircularConfig{ @Bean public A a (B b) { return new A(b); } @Bean public B b(A a) { return new B(a); } } - 어느 빈을 먼저 생성하고 주입해야 하는지 판단하기 어렵다. -> BeanCurrentlyInCreationException 발생 - 의존성 주입이 순환적으로 계속되는 경우, 무한.. 2023. 6. 22. SpringBoot Part1-2 1. Inversion of Control(제어의 역전) IoC란 제어의 흐름이 역전되는 것을 말한다. 해당 상황에서는 객체가 자신이 사용할 객체를 스스로 선택, 생성하지 않는다. 💡 스프링 프레임워크에서는 제어의 권한이 객체 자신에게 없고 프레임워크에 있다. => 프레임워크는 전체 흐름의 제어 권한을 가지고 있다. => 프레임워크가 흐름을 주도하면서 개발자가 만든 애플리케이션 코드를 사용한다. SpringBoot Part1-1에서 작성한 코드를 살펴보자. public class Main { public static void main(String[] args) { FixedAmountVoucher fixedAmountVoucher = new FixedAmountVoucher(10L); Order orde.. 2023. 6. 21. 이전 1 다음