Sobes.tech
Назад к вопросам
Junior — Middle
87

Какими методами реализуется внедрение зависимостей в Bean?

Компании, где спрашивали
ЛанитЛанит

Ответ от нейросети

sobes.tech AI

Внедрение зависимостей (Dependency Injection) в Bean обычно реализуется следующими методами:

  1. Через конструктор — зависимости передаются в конструктор класса. Это обеспечивает неизменяемость зависимостей после создания объекта.
public class Service {
    private final Repository repo;

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

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

Каждый метод имеет свои плюсы и минусы, выбор зависит от контекста и используемого фреймворка.