반응형
@Componenet, @Configuration 차이에 대한 정리

@Componenet

  • 개발자가 직접 작성한 클래스를 Bean으로 등록하고자 할 경우 사용
  • @Controller, @Service, @Repository 등의 어노테이션에서 상속
// 다른 클래스에서 Bean으로 불러 사용이 가능함
@Component
public class SpringComponent{
  // do something
}

@Configuration

  • 외부 라이브러리 또는 내장 클래스를 Bean으로 등록하고자 할 경우 사용(개발자가 직접 제어가 불가능한 클래스)
  • 1개 이상의 @Bean을 제공하는 클래스의 경우 반드시 @Configuration을 사용한다. 즉, 해당 클래스에서 한 개 이상의 Bean을 생성하고 있을 때 선언해 주어야 함
@Configuration
public class FeignRetryConfiguration {
​
  @Bean
  public FeignRetryAspect FeignRetryService() {
    return new FeignRetryAspect();
  }
}
반응형

+ Recent posts