Встречается на собеседованиях • сегодня

Что такое DI в Spring

DI (Dependency Injection) — это механизм в Spring, позволяющий внедрять зависимости между компонентами автоматически, без явного создания объектов через new. Spring IoC-контейнер управляет жизненным циклом бинов и их зависимостями.

Пример:

java
@Service
public class UserService {
    private final UserRepository userRepository;
text
@Autowired
public UserService(UserRepository userRepository) {
    this.userRepository = userRepository;
}

}

text
**Типы DI:**  
1. **Constructor Injection** (рекомендуется) — через конструктор.  
2. **Setter Injection** — через сеттеры.  
3. **Field Injection** (не рекомендуется) — через аннотацию `@Autowired` над полем.  

**Преимущества:**  
- Уменьшает связность кода.  
- Упрощает тестирование (можно подменять зависимости).  
- Управление зависимостями делегируется контейнеру.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы