Встречается на собеседованиях • сегодня
Какой способ внедрения Bean предпочтительнее в Spring
В Spring предпочтительнее использовать внедрение через конструктор (@Autowired на конструкторе или без аннотации, если только один конструктор). Это обеспечивает:
- Неизменяемость – поля можно сделать
final. - Безопасность NPE – зависимости проверяются при создании бина.
- Тестируемость – проще мокировать зависимости в unit-тестах.
Пример:
java
@Service
public class UserService {
private final UserRepository repository;
public UserService(UserRepository repository) {
this.repository = repository;
}
}Альтернативы (setter/field injection) менее надежны:
- Field injection скрывает зависимости и усложняет тестирование.
- Setter injection допускает частичную инициализацию бина.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы