Использование @Autowired в объявлении типа аннотации

Я понимаю, что @Autowired используется для внедрения зависимостей

Marks a constructor, field, setter method or config method as to be autowired by Spring's dependency injection facilities.

Но какое использование для объявления типа аннотации, которое определено

@Target(value = {CONSTRUCTOR,METHOD,PARAMETER,FIELD,ANNOTATION_TYPE})

Есть ли какое-либо использование/эффект для определения @Autowired в пользовательской аннотации:

@Autowired
public @interface MyAnnotation {
}

Я не нашел ссылок в Весенние документы

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?

Oreste Viron 14.05.2019 13:27

@OresteViron, можете ли вы ответить, если это возможно?

user7294900 14.05.2019 13:30
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
2
218
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Если вы поместите аннотацию @Autowired над другим объявлением аннотации, новая аннотация будет иметь тот же эффект, что и аннотация @Autowired. Например, в вашем случае вы можете использовать @MyAnnotation вышеуказанный конструктор, поле, метод установки или метод конфигурации, которые будут автоматически подключены средствами внедрения зависимостей Spring.

Более того, вы можете обнаружить, что аннотация @Controller в фреймворке Spring объявлена ​​как @Component. В результате классы, помеченные как @Controller, также создаются как контейнерные компоненты.

Другие вопросы по теме