spring

Backend/Spring

[Spring] 의존관계 자동 주입

🤔 의존관계 주입 방법 ✔ 생성자 주입 생성자를 통해서 의존 관계를 주입 받는 방법입니다. 생성자 호출 시점에 1번만 호출되는것이 보장됩니다. 호출되는 시점에 값을 딱 1번 세팅하고 그 다음부터는 수정되지 못하도록 막을 수 있습니다. ('불변, 필수' 의존 관계에 사용) @Component public class OrderServiceImpl implements OrderService { private final MemberRepository memberRepository; private final DiscountPolicy discountPolicy; @Autowired public OrderServiceImpl(MemberRepository memberRepository, DiscountPolicy ..

Backend/Spring

[Spring] 컴포넌트 스캔

🤔 컴포넌트 스캔 스프링 빈을 등록할 때는 자바 코드의 @Bean 어노테이션을 통해서 설정 정보(AppConfig.java)에 직접 등록할 스프링 빈을 나열했다. 이렇게 등록해야할 스프링 빈이 많아지면 하나하나 등록하기도 힘들고 설정정보도 커지면서 누락하는 문제도 발생할 수 있다. 그래서 스프링은 설정 정보가 없어도 자동으로 스프링 빈을 등록하는 컴포넌트 스캔 이라는 기능을 제공한다. ✔ @ComponentScan @ComponentScan은 @Component 가 붙은 모든 클래스를 스프링 빈으로 등록한다.(싱글톤) 🚨 문제 하지만 이렇게 어노테이션을 사용하여 해당하는 클래스에 자동으로 등록하게되면 의존관계를 주입할 수 있는 방법이 없다. 이전에는 설정 정보(AppConfig)에서 원하는 의존관계를 설..

장용석
'spring' 태그의 글 목록