Sobes.tech
Назад к вопросам
Junior — Middle
51

Можете объяснить, что означает аннотация @Autowired в контексте встроенной инъекции зависимостей в Spring?

Компании, где спрашивали
Eclipse Digital

Ответ от нейросети

sobes.tech AI

Аннотация @Autowired в Spring используется для автоматического внедрения зависимостей (Dependency Injection). Она позволяет фреймворку автоматически найти и подставить нужный бин (компонент) в поле, конструктор или сеттер класса без необходимости явно создавать объект.

Например, если у вас есть сервис, который зависит от репозитория, можно написать так:

@Component
public class UserService {
    @Autowired
    private UserRepository userRepository;

    // теперь userRepository будет автоматически внедрён Spring
}

Spring при запуске приложения просканирует контекст, найдёт бин UserRepository и подставит его в userRepository. Это упрощает управление зависимостями и способствует слабой связности компонентов.