Sobes.tech
Junior — Middle
87

Каким образом можно зарегистрировать обычный класс как компонент Spring для использования как bean?

Сұралған компаниялар
Eclipse Digital

AI-дан жауап

sobes.tech AI

Чтобы зарегистрировать обычный класс как компонент Spring и использовать его как bean, можно:

  1. Добавить аннотацию @Component (или её специализированные варианты, например, @Service, @Repository) над классом. Spring автоматически обнаружит такой класс при сканировании компонентов.
import org.springframework.stereotype.Component;

@Component
public class MyService {
    public void doSomething() {
        // логика
    }
}
  1. Убедиться, что пакет с этим классом включён в область сканирования компонентов (через @ComponentScan или настройки в конфигурации).

  2. После этого Spring создаст bean этого класса, и его можно будет внедрять через @Autowired.

Альтернативно, можно зарегистрировать bean программно в конфигурационном классе с помощью метода, аннотированного @Bean:

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

Но чаще всего для простоты и удобства используют аннотацию @Component.