Sobes.tech
Back to questions
Junior — Middle
64

Каким образом осуществляется внедрение зависимостей в рамках Spring Framework?

Companies where asked
AstonAston

Answer from AI

sobes.tech AI

Внедрение зависимостей (Dependency Injection, DI) в Spring Framework осуществляется через контейнер Spring, который управляет жизненным циклом объектов и их зависимостями.

Основные способы внедрения зависимостей в Spring:

  1. Через конструктор — зависимости передаются через параметры конструктора класса.
@Component
public class Service {
    private final Repository repository;

    @Autowired
    public Service(Repository repository) {
        this.repository = repository;
    }
}
  1. Через сеттеры (Setter Injection) — зависимости устанавливаются через методы-сеттеры.
@Component
public class Service {
    private Repository repository;

    @Autowired
    public void setRepository(Repository repository) {
        this.repository = repository;
    }
}
  1. Через поля (Field Injection) — зависимости внедряются напрямую в поля с помощью аннотации @Autowired.
@Component
public class Service {
    @Autowired
    private Repository repository;
}

Контейнер Spring сканирует компоненты, создает необходимые объекты и автоматически подставляет зависимости, что облегчает управление связями между классами и повышает тестируемость кода.