본문 바로가기

spring/그 외 알게 된 것

왜 수동 Bean 등록에서도 어노테이션을 사용하는가?

왜 수동 빈 등록에서도 어노테이션을 사용하는가?

  1. 명시적이고 명확한 빈 정의:
    • 수동 빈 등록을 통해 빈을 정의하면, 빈의 생성과 설정을 더 세밀하게 제어할 수 있습니다. 특정 빈의 생성 로직을 커스터마이즈하거나, 복잡한 초기화 작업이 필요한 경우 유용하다.
    • @Configuration과 @Bean 어노테이션을 사용하면, 어떤 클래스와 메서드가 빈을 정의하고 있는지 명확하게 알 수 있다.
  2. 빈 설정의 중앙 집중화:
    • 여러 빈을 한 곳에서 관리할 수 있다. 예를 들어, 특정 기능이나 모듈에 관련된 빈들을 한 클래스에 모아 @Configuration 클래스로 만들면, 유지보수가 용이해진다.
  3. 외부 라이브러리와의 통합:
    • 외부 라이브러리에서 제공하는 빈을 수동으로 등록할 때 유용하다. 예를 들어, 외부 라이브러리의 클래스들은 우리가 컨트롤할 수 없기 때문에 @Component를 추가할 수 없지만, @Bean 메서드를 사용하여 스프링 컨텍스트에 등록할 수 있다.
  4. 유연성과 확장성:
    • 특정 상황에서는 빈의 라이프사이클이나 생성 과정을 더 세밀하게 제어해야 할 때가 있다. 이럴 때 @Configuration과 @Bean을 사용하면 더 유연하게 빈을 설정하고 관리할 수 있다.

 

자동 빈 등록(@Component, @ComponentScan)과 수동 빈 등록(@Configuration, @Bean) 모두 어노테이션을 사용하지만, 그 목적과 용도가 다르다. 수동 빈 등록에서도 어노테이션을 사용하는 이유는 다른 어노테이션 쓰는 것들과 같이 쓰기 위함이다.

'spring > 그 외 알게 된 것' 카테고리의 다른 글

JDBC와 JPA  (0) 2024.06.25
URI 와 URL은 뭐가 다를까  (0) 2024.06.18
백엔드에서 API의 의미; 왜 API개발자라고 할까  (0) 2024.06.17
JDBC들어가기전 용어 정리  (0) 2024.06.15
Spring MVC 용어  (0) 2024.06.15