Spring에는 AnnotatedTypeScanner
클래스 라는 것이 있습니다.
이 클래스는 내부적으로
ClassPathScanningCandidateComponentProvider
이 클래스에는 실제 클래스 경로 스캔 코드가 있습니다 리소스 있습니다. 런타임시 사용 가능한 클래스 메타 데이터를 사용하여이를 수행합니다.
이 클래스를 단순히 확장하거나 스캔에 동일한 클래스를 사용할 수 있습니다. 아래는 생성자 정의입니다.
/**
* Creates a new {@link AnnotatedTypeScanner} for the given annotation types.
*
* @param considerInterfaces whether to consider interfaces as well.
* @param annotationTypes the annotations to scan for.
*/
public AnnotatedTypeScanner(boolean considerInterfaces, Class<? extends Annotation>... annotationTypes) {
this.annotationTypess = Arrays.asList(annotationTypes);
this.considerInterfaces = considerInterfaces;
}