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

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

Компании, где спрашивали
АЙ-ТЕКОАЙ-ТЕКО
СБЕРСБЕР

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

sobes.tech AI

В Spring аннотация @Bean используется для явного определения компонента (бина) в конфигурационном классе. Она сообщает Spring, что метод, помеченный этой аннотацией, возвращает объект, который должен быть зарегистрирован в контексте приложения как Spring Bean.

Это полезно, когда нужно создать и настроить объект вручную, а не полагаться на автоматическое сканирование компонентов (@Component).

Пример использования:

@Configuration
public class AppConfig {

    @Bean
    public MyService myService() {
        return new MyServiceImpl();
    }
}

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

Таким образом, @Bean позволяет гибко управлять созданием и конфигурацией компонентов в Spring.