@Autowired 在注解类型声明中的用法
@Autowired usage in Annotation type declaration
我明白@Autowired用于依赖注入
Marks a constructor, field, setter method or config method as to be autowired by Spring's dependency injection facilities.
但是定义的Annotation类型声明有什么用
@Target(value={CONSTRUCTOR,METHOD,PARAMETER,FIELD,ANNOTATION_TYPE})
自定义注解中是否有usage/effect定义@Autowired
:
@Autowired
public @interface MyAnnotation {
}
我没有在 Spring docs
中找到任何参考资料
By default, the autowiring will fail whenever zero candidate beans are available; the default behavior is to treat annotated methods, constructors, and fields as indicating required dependencies.
如果将 @Autowired
注释放在其他注释声明之上,新注释将与 @Autowired
注释具有相同的效果。例如,在您的情况下,您可以使用 @MyAnnotation
上面的构造函数、字段、setter 方法或配置方法,以便由 Spring 的依赖注入工具自动装配。
此外,您可能会发现,spring 框架中的 @Controller
注释声明为 @Component
。结果,标记为 @Controller
的 类 也创建为容器 bean。
我明白@Autowired用于依赖注入
Marks a constructor, field, setter method or config method as to be autowired by Spring's dependency injection facilities.
但是定义的Annotation类型声明有什么用
@Target(value={CONSTRUCTOR,METHOD,PARAMETER,FIELD,ANNOTATION_TYPE})
自定义注解中是否有usage/effect定义@Autowired
:
@Autowired
public @interface MyAnnotation {
}
我没有在 Spring docs
中找到任何参考资料By default, the autowiring will fail whenever zero candidate beans are available; the default behavior is to treat annotated methods, constructors, and fields as indicating required dependencies.
如果将 @Autowired
注释放在其他注释声明之上,新注释将与 @Autowired
注释具有相同的效果。例如,在您的情况下,您可以使用 @MyAnnotation
上面的构造函数、字段、setter 方法或配置方法,以便由 Spring 的依赖注入工具自动装配。
此外,您可能会发现,spring 框架中的 @Controller
注释声明为 @Component
。结果,标记为 @Controller
的 类 也创建为容器 bean。