Встречается на собеседованиях • сегодня
В чем разница между аннотациями @Bean и @Component в Spring
@Bean и @Component — это аннотации Spring для создания бинов, но с разными подходами:
@Component- Используется на уровне класса (класс-компонент).
- Spring автоматически обнаруживает и регистрирует его как бин.
- Пример:
java
@Component public class MyService { ... }
@Bean- Используется в методах конфигурационных классов (
@Configuration). - Позволяет явно определять бин, особенно для сторонних классов.
- Пример:
java
@Configuration public class AppConfig { @Bean public DataSource dataSource() { return new HikariDataSource(); } }
- Используется в методах конфигурационных классов (
Ключевые отличия:
@Component— для своих классов,@Bean— для любых (включая сторонние).@Beanдаёт больше контроля (например, условное создание через@Conditional).

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