Sobes.tech
Junior — Middle
90

Wie erfolgt die Registrierung einer Klasse im Spring-Container für die Dependency Injection?

Unternehmen wurden gefragt
IT OneIT One

Antwort von AI

sobes.tech KI

В Spring регистрация класса в контейнере для внедрения зависимостей обычно осуществляется с помощью аннотаций. Основные способы:

  • Аннотация @Component (и её специализированные варианты @Service, @Repository, @Controller) над классом — Spring автоматически обнаружит такой класс при сканировании пакетов (component scanning) и зарегистрирует его как bean.
  • Использование конфигурационного класса с аннотацией @Configuration и метода с аннотацией @Bean, который возвращает экземпляр нужного класса.

Пример с @Component:

@Component
public class MyService {
    // логика сервиса
}

Пример с @Bean:

@Configuration
public class AppConfig {
    @Bean
    public MyService myService() {
        return new MyService();
    }
}

Таким образом, Spring контейнер управляет жизненным циклом этих объектов и внедряет их туда, где они нужны, через автосвязывание (@Autowired).