Встречается на собеседованиях • сегодня
Какие плюсы и минусы использования @Component вместо @Bean
Использование @Component и @Bean имеет свои преимущества и недостатки:
Плюсы @Component:
- Удобство: аннотация ставится прямо над классом, автоматически регистрируя его как бин.
- Читаемость: явно указывает, что класс является компонентом Spring.
- Поддержка автоматического сканирования (
@ComponentScan).
Минусы @Component:
- Меньшая гибкость: нельзя кастомизировать создание бина, как в
@Bean. - Только для своих классов: нельзя использовать для сторонних библиотек.
Плюсы @Bean:
- Гибкость: полный контроль над созданием бина (логика инициализации, условия).
- Работает с любыми классами, даже из сторонних библиотек.
Минусы @Bean:
- Более многословный: требует отдельного метода в конфигурационном классе.
Пример:
java
// @Component
@Component
public class MyService { ... }
// @Bean
@Configuration
public class AppConfig {
@Bean
public MyService myService() {
return new MyService();
}
}
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы