Spring & Boot

@Configuration @Bean 수동등록

린예라 2024. 3. 31. 23:35

다음의 요소들을 각각 수동으로 빈객체를 등록하고, 의존성을 주입해보자.

이때는 @Configuraton, @Bean을 사용할 수 있다. 다음은 코드의 예시이다.

Controller에 Service의 객체인 service를 넣어주면서 controller 객체를 생성하고 있다.

 

위의 코드를 수행하여 다음과 같은 형태가 완성 될 것이다.

 그렇다면 자동으로 등록하는 방법이 있음에도 이렇게 수동으로 등록하는 방법을 사용하는 이유가 무엇일까?

 

바로 이렇게 수동으로 @Bean을 등록하고 의존성을 설정하게 되면, 객체간의 의존성 주입을 바꿔야 할 때(구현클래스가 변경되는 등의 상황) 최소한의 코드 수정으로 교체가 가능하다.

 

반대로 의존성 관계를 바꿔야 할 필요가 없다면 컴포넌트 스캔을 이용한 @Autowired를 사용하는게 바람직 할 것이다.

 

@Component @Autowired 를 이용한 자동 의존성 주입 포스팅

https://linyerawork.tistory.com/65

'Spring & Boot' 카테고리의 다른 글

스프링 배치 필요한 메타데이터 테이블 설정  (0) 2024.05.20
@PathVariable, @RequestParam  (0) 2024.04.20
컴포넌트스캔 @Autowired  (0) 2024.03.30
스프링 부트 큰 그림  (0) 2024.03.21
ORM 그리고 객체지향  (0) 2023.09.10