@Target(value=TYPE) @Retention(value=RUNTIME) @Documented public @interface Component
Other class-level annotations may be considered as identifying
a component as well, typically a special kind of component:
e.g. the @Repository
annotation or AspectJ's
@Aspect
annotation.
Repository
,
Service
,
Controller
,
ClassPathBeanDefinitionScanner
public abstract String value