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

Какие знаешь способы внедрения бинов

В Spring есть 3 основных способа внедрения зависимостей:

  1. Через конструктор (рекомендуемый способ)
java
@Service
public class UserService {
    private final UserRepository repo;
    
    @Autowired
    public UserService(UserRepository repo) {
        this.repo = repo;
    }
}
  1. Через сеттер
java
@Service
public class UserService {
    private UserRepository repo;
    
    @Autowired
    public void setRepo(UserRepository repo) {
        this.repo = repo;
    }
}
  1. Через поле (не рекомендуется, нарушает инкапсуляцию)
java
@Service
public class UserService {
    @Autowired
    private UserRepository repo;
}

Начиная с Spring 4.3, если у класса только один конструктор, @Autowired можно опустить. Также можно использовать @Resource (JSR-250) или @Inject (JSR-330) вместо Spring-специфичной аннотации @Autowired.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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