Sobes.tech
Back to questions
Junior — Middle
76

Можно ли применять аннотацию @Component к интерфейсу в рамках Spring Framework?

Companies where asked
Firecode

Answer from AI

sobes.tech AI

Аннотация @Component в Spring Framework предназначена для пометки классов как компонентов, которые будут автоматически обнаружены и зарегистрированы в контексте Spring (IoC контейнере). Применять @Component к интерфейсу нельзя, так как интерфейс не может быть инстанцирован, и Spring не сможет создать бин на его основе.

Обычно @Component ставят на классы, которые реализуют интерфейсы или сами являются компонентами. Если нужно зарегистрировать бин по интерфейсу, то это делается через класс-реализацию, а не через интерфейс.