Назад к вопросам
Middle
72
questionbank
Где используется аннотация @Bean?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
Аннотация @Bean используется над методами в классах конфигурации (помеченных @Configuration) для объявления и регистрации Spring-бинов в контексте приложения. Метод, помеченный @Bean, возвращает объект, который Spring-контейнер будет инстанцировать, конфигурировать и управлять им как бином.
Примеры использования:
В классе конфигурации:
@Configuration
public class AppConfig {
@Bean
public MyService myService() {
// Логика создания экземпляра бина
return new MyService();
}
@Bean
public AnotherBean anotherBean(MyService myService) {
// Внедрение зависимости другого бина
return new AnotherBean(myService);
}
}
С разными областями видимости (scopes):
@Configuration
public class SecurityConfig {
@Bean
@Scope("prototype") // Каждый запрос будет получать новый экземпляр
public SecurityService securityService() {
return new SecurityService();
}
}
С указанием имени бина:
@Configuration
public class DatabaseConfig {
@Bean(name = "myDataSource")
public DataSource dataSource() {
// Настройка и возврат DataSource
return new BasicDataSource();
}
}