• Home
  • About
    • Junseok photo

      Junseok

      개발자 블로그

    • Learn More
    • Facebook
    • Instagram
    • Github
  • Posts
    • All Posts
    • All Tags
  • Java
    • java-basic
    • java-solid
    • java-pattern
    • java-logging
  • Javascript
  • Angular
  • spring
    • spring-framework
    • spring-boot
    • spring-test
  • server
    • jeus
    • webtob
    • tomcat
  • test
    • junit
    • assertj
    • hamcrest
    • dbunit
    • spring
  • docker
  • unix
  • maven
  • db
  • network
  • eclipse
  • intellij
  • microservices
  • etc

Qualifier Annotation

14 Mar 2018

Reading time ~1 minute

@Qualifier 어노테이션은 한정자로 어노테이션 기반 autowiring 미세 조정에서 설명합니다.
이 절의 예제는 autowire 후보를 해결할 때 @Qualifier 어노테이션과 사용자 정의 한정어 어노테이션(custom qualifier annotations)을 사용하여 세밀한 제어를 제공함을 보여줍니다.

이러한 예제는 XML Bean 정의를 기반으로했기 때문에 한정자(qualifier) 메타 데이터는 XML에서 Bean 요소의 한정자 또는 메타 하위 요소(sub-elements)를 사용하여 후보(candidate) Bean 정의에 제공됩니다.

구성 요소 자동 검색을 위한 클래스 경로 검색에 의존 할 때 후보 클래스에 한정자 메타 데이터에 유형 수준 어노테이션을 제공합니다.

다음 세 가지 예제에서는 이 기술을 보여줍니다.

@Component
@Qualifier("Action")
public class ActionMovieCatalog implements MovieCatalog {
    // ...
}
@Component
@Genre("Action")
public class ActionMovieCatalog implements MovieCatalog {
    // ...
}
@Component
@Offline
public class CachingMovieCatalog implements MovieCatalog {
    // ...
}

대부분의 어노테이션 기반 대안에서와 마찬가지로 어노테이션 메타 데이터는 클래스 정의 자체에 바인딩되지만 XML을 사용하면 같은 유형의 여러 빈이 자신의 한정자 메타 데이터에 변형을 제공 할 수 있습니다.
왜냐하면 이는 해당 메타 데이터가 클래스별로 제공되는 것이 아니라 인스턴스별로 제공되기 때문입니다.




springframework Share Tweet +1