Встречается на собеседованиях • сегодня
Какие знаешь способы инъекции Bean
В Spring есть несколько способов внедрения зависимостей (Dependency Injection):
- Через конструктор (рекомендуемый способ):
java
@Service
public class MyService {
private final MyRepository repository;
@Autowired
public MyService(MyRepository repository) {
this.repository = repository;
}
}- Через сеттер:
java
@Service
public class MyService {
private MyRepository repository;
@Autowired
public void setRepository(MyRepository repository) {
this.repository = repository;
}
}- Через поле (не рекомендуется, нарушает инкапсуляцию):
java
@Service
public class MyService {
@Autowired
private MyRepository repository;
}- Через метод (любой метод с @Autowired):
java
@Service
public class MyService {
private MyRepository repository;
@Autowired
public void configure(MyRepository repository) {
this.repository = repository;
}
}Начиная с Spring 4.3, если у класса только один конструктор, @Autowired можно опустить. Также можно использовать Lombok для автоматического создания конструктора через @RequiredArgsConstructor.

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