Junior — Middle
Para além do uso do Spring, quais são os métodos alternativos de injeção de inversão de controlo nas aplicações?
sobes.tech IA
Resposta da IA
Помимо Spring, инверсию управления (IoC) можно реализовать следующими способами:
- Использование других фреймворков, например, Google Guice — легковесный DI-контейнер для Java.
- Ручное внедрение зависимостей через конструкторы или сеттеры без фреймворка.
- Использование CDI (Contexts and Dependency Injection) — стандарт Java EE для IoC.
- Применение фабричных методов и паттерна Service Locator для управления зависимостями.
Например, при ручном внедрении зависимостей создаём объекты и передаём их явно:
class Service {
private final Repository repo;
public Service(Repository repo) {
this.repo = repo;
}
}
// В main или конфигурации
Repository repo = new Repository();
Service service = new Service(repo);
Это простой способ добиться IoC без использования Spring.