Spring Framework/Spring

Spring Framework/Spring

[Spring] 스프링 중복 빈 해결 방법, Bean이 2개 이상일 때

스프링 빈을 조회할 때 메서드 이름 없이 타입으로만 조회하게 되면 스프링 빈이 2개 이상 조회될 수 있는 문제가 있습니다. @Autowired는 객체의 타입(Type)으로 조회합니다. @Autowired private DiscountPolicy discountPolicy // 위의 코드는 // ac.getBean(DiscountPolicy)와 유사하게 동작합니다 @Component public class FixDiscountPolicy implements DiscountPolicy {} // 두 스프링 빈 모두 타입이 DiscountPolicy @Component public class RateDiscountPolicy implements DiscountPolicy {} ✔ 타입으로만 조회하게 되면 스프..

Spring Framework/Spring

Spring 싱글톤 컨테이너와 스프링 컨테이너 개념 이해하기

스프링 없는 순수한 DI Container✔ 스프링을 사용하지 않는 DI 컨테이너인 AppConfig는 사용자가 요청을 할 때마다 객체를 계속해서 새로 생성합니다.-> 요청할 때마다 객체를 계속해서 생성하므로 메모리 낭비가 심합니다. 해결방안✔ 해당 객체가 딱 1개만 생성되고 (Singleton), 공유하도록 설계하여 반복 생성되는 구조를 피하는 것입니다.public class SingletonTest { @Test @DisplayName("스프링 없는 순수한 DI 컨테이너") void pureContainer(){ AppConfig appConfig = new AppConfig(); // 1. 조회: 호출할 때 마다 객체를 생성 MemberServi..