본문 바로가기
728x90

자동 빈 등록2

[Spring] 의존관계 자동 주입 다양한 의존관계 주입 방법 의존관계 주입 방법 4가지 생성자 주입 수정자 주입(setter 주입) 필드 주입 일반 메서드 주입 생성자 주입 이름 그대로 생성자를 이용해 의존관계를 주입하는 방법으로, 앞선 개념 공부에서 사용한 코드가 생성자 주입 방식을 통한 의존관계 주입에 해당한다. 특징 생성자 호출 시점에 딱 1번만 호출되는 것이 보장된다. 불변, 필수 의존관계에 사용한다. MemberRepository, DiscountPolicy 두 개의 추상에 의존하는 OrderServiceImpl(주문 서비스 구현체)을 예시로 들어보자. @Component public class OrderServiceImpl implements OrderService{ private final MemberRepository me.. 2023. 1. 5.
[Spring] 컴포넌트 스캔 컴포넌트 스캔과 의존관계 자동 주입 시작하기 지금까지 스프링 빈을 등록할 때에는 자바 코드의 @Bean이나 XML의 등을 통해 설정 정보에 직접 등록할 스프링 빈을 나열했다. 예제에서는 몇 개가 안되었지만, 실제 구현 상황에서는 이렇게 등록해야 할 스프링 빈이 수십, 수백 개가 되면 일일이 등록하기 귀찮고, 설정 정보가 커지며 누락하는 상황도 발생 그래서 스프링은 설정 정보가 없어도 자동으로 스프링 빈을 등록하는 컴포넌트 스캔이라는 기능을 제공한다. 또 의존 관계를 자동으로 주입해 주는 @Autowired라는 기능도 제공한다. 코드를 통해 컴포넌트 스캔 + 의존관계 자동 주입을 알아보자. 먼저 기존의 AppConfig.java를 남겨두고, 새로운 코드인 AutoAppConfig.java를 만든다. pac.. 2023. 1. 3.
728x90