Встречается на собеседованиях • сегодня
Как реализуется Inversion of Control через Dependency Injection в Quarkus
Quarkus использует CDI (Contexts and Dependency Injection) для IoC. Основные способы внедрения зависимостей:
- Через конструктор (рекомендуемый способ):
java
@ApplicationScoped
public class MyService {
private final MyRepository repository;
@Inject
public MyService(MyRepository repository) {
this.repository = repository;
}
}- Через поле:
java
@ApplicationScoped
public class MyService {
@Inject
MyRepository repository;
}- Через метод-сеттер:
java
@ApplicationScoped
public class MyService {
private MyRepository repository;
@Inject
public void setRepository(MyRepository repository) {
this.repository = repository;
}
}Quarkus автоматически управляет жизненным циклом бинов (по умолчанию @ApplicationScoped). Можно использовать другие скоупы: @RequestScoped, @SessionScoped, @Dependent. Для кастомных зависимостей используются производители (@Produces).

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