본문 바로가기
728x90

스프링 빈2

[Spring] 의존관계 자동 주입 다양한 의존관계 주입 방법 의존관계 주입 방법 4가지 생성자 주입 수정자 주입(setter 주입) 필드 주입 일반 메서드 주입 생성자 주입 이름 그대로 생성자를 이용해 의존관계를 주입하는 방법으로, 앞선 개념 공부에서 사용한 코드가 생성자 주입 방식을 통한 의존관계 주입에 해당한다. 특징 생성자 호출 시점에 딱 1번만 호출되는 것이 보장된다. 불변, 필수 의존관계에 사용한다. MemberRepository, DiscountPolicy 두 개의 추상에 의존하는 OrderServiceImpl(주문 서비스 구현체)을 예시로 들어보자. @Component public class OrderServiceImpl implements OrderService{ private final MemberRepository me.. 2023. 1. 5.
[Spring] 스프링 컨테이너와 스프링 빈 개념 정리 스프링 컨테이너 ApplicationContext를 스프링 컨테이너라고 한다. 기존에는 개발자가 AppConfig를 사용해 직접 객체를 생성해서 DI 했지만, 스프링 컨테이너를 사용하면 스프링 컨테이너가 이 역할을 대신해 준다. 스프링 컨테이너는 @Configuration이 붙은 AppConfig를 설정(구성) 정보로 사용한다. 이때 이 안에서 @Bean이라는 어노테이션이 붙은 메서드를 모두 호출해서 반환된 객체를 모두 스프링 컨테이너에 등록한다. 이렇게 스프링 컨테이너에 등록된 객체를 스프링 빈이라고 부른다고 한다. 스프링 컨테이너를 사용하게 되면, 기존의 AppConfig를 사용한 조회와 다르게 스프링 컨테이너를 통해서 필요한 스프링 빈(객체)을 찾도록 바뀌어야 한다. 필요한 스프링 빈은 applic.. 2022. 12. 31.
728x90