Back to questions
Junior — Middle
56
Каким образом в Spring Boot осуществляется внедрение зависимостей?
Answer from AI
sobes.tech AI
В Spring Boot внедрение зависимостей осуществляется с помощью механизма Spring IoC Container, который управляет созданием и связыванием объектов (бинов).
Основные способы внедрения зависимостей:
- Через аннотацию
@Autowired— Spring автоматически подставляет нужный бин по типу.
@Service
public class UserService {
@Autowired
private UserRepository userRepository;
}
- Через конструктор — предпочтительный способ, особенно для тестируемости.
@Service
public class UserService {
private final UserRepository userRepository;
public UserService(UserRepository userRepository) {
this.userRepository = userRepository;
}
}
- Через сеттеры — менее распространено, но тоже возможно.
Spring Boot автоматически сканирует компоненты, помеченные аннотациями @Component, @Service, @Repository и создает их экземпляры, связывая зависимости.
Также можно использовать @Qualifier для выбора конкретной реализации, если их несколько.