Встречается на собеседованиях • сегодня
Почему правильнее внедрять бин в Spring через конструктор
Внедрение зависимостей через конструктор в Spring считается лучшей практикой по нескольким причинам:
- Неизменяемость - зависимости становятся final, что делает их thread-safe и предотвращает случайное изменение
- Явная зависимость - все зависимости видны сразу при создании объекта
- Тестируемость - упрощает unit-тестирование, так как зависимости можно легко передать в конструктор
- Циклические зависимости - Spring сразу обнаружит циклические зависимости при старте приложения
- Обязательность - гарантирует, что объект не будет создан без необходимых зависимостей
Пример:
java
@Service
public class UserService {
private final UserRepository userRepository;
@Autowired // можно опустить начиная с Spring 4.3
public UserService(UserRepository userRepository) {
this.userRepository = userRepository;
}
}
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы