Встречается на собеседованиях • сегодня
Можно ли с помощью @Autowired задать обязательность зависимости
Да, можно. По умолчанию @Autowired помечает зависимость как обязательную (required=true). Если зависимость не найдена, будет выброшено NoSuchBeanDefinitionException.
Чтобы сделать зависимость необязательной, нужно явно указать @Autowired(required=false). В этом случае, если бин не найден, поле останется null.
Пример:
java
@Service
public class MyService {
@Autowired // обязательная зависимость (по умолчанию)
private SomeRepository repository;
@Autowired(required = false) // необязательная зависимость
private OptionalDependency optionalDep;
}Начиная с Spring 4.3, для конструкторов @Autowired можно не указывать, если есть только один конструктор, и он будет считаться обязательным.

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