Спасибо! Мы используем компонент, когда нам нужно создать бин из обычного класса и внутри нет методов помеченных аннотацией @Bean) Например, если привести простой пример, есть класс кошка и нам нужно создать конкретную кошку - помечаем ее аннотацией компонент ) Конфигурэйшн же используем когда внутри есть методы помеченные аннотацией @Bean (возвращающие бины) , например когда мы конфигурируем базу данных, то класс, ответственный за конфигурацию помечаем @Configuration и внутри будем возвращать различные бины, которые ответственны за настройку (конфигурацию) базы данных. Надеюсь, что ответил на ваш вопрос)
Привет! Классные видео делаешь, у меня вопрос. Вопрос о том что у меня к примеру смешанные конфигурации, часть бинов описана в @configuration классе, а часть как @component. И в классах которые помечены @component есть зависимости от бинов в классе @configuration. Как я могу @bean компонент за @autowired в класс который помечен @component? Жду ответа и если есть твои контакты, было бы супер если бы написал
Привет! спасибо) Если я верно понял твой вопрос - ты хочешь внедрить @Bean в @Component - можно сделать так: @Component public class Comp { private File file; @Autowired public Comp(File file) { this.file = file; } public File getFile() { return file; } } File - это @Bean из видео) Мои контакты: vk.com/id1854811
А такой вопрос, если у меня КЛАСС не является бином, но внутрь него я хочу за автоварить бин. Я должен этот КЛАСС, вписать в applicationContext чтоб когда он поднимал контекст, внутри него он нашёл @Autowired и соответственно смог внедрить компонент в КЛАСС который не является бином?
Спасибо! Нигде не видела разбор @Component vs @Configuration так понятно 🙏
Я тоже в тот момент нигде не видел) Подумал, что будет интересно)
спасибо
Очень хороший и простой материал. Небольшое пожелание чего не хватило - просто уточнения, а когда @Component используется?
Спасибо! Мы используем компонент, когда нам нужно создать бин из обычного класса и внутри нет методов помеченных аннотацией @Bean) Например, если привести простой пример, есть класс кошка и нам нужно создать конкретную кошку - помечаем ее аннотацией компонент ) Конфигурэйшн же используем когда внутри есть методы помеченные аннотацией @Bean (возвращающие бины) , например когда мы конфигурируем базу данных, то класс, ответственный за конфигурацию помечаем @Configuration и внутри будем возвращать различные бины, которые ответственны за настройку (конфигурацию) базы данных. Надеюсь, что ответил на ваш вопрос)
Привет! Классные видео делаешь, у меня вопрос. Вопрос о том что у меня к примеру смешанные конфигурации, часть бинов описана в @configuration классе, а часть как @component. И в классах которые помечены @component есть зависимости от бинов в классе @configuration. Как я могу @bean компонент за @autowired в класс который помечен @component? Жду ответа и если есть твои контакты, было бы супер если бы написал
Привет! спасибо) Если я верно понял твой вопрос - ты хочешь внедрить @Bean в @Component - можно сделать так:
@Component
public class Comp {
private File file;
@Autowired
public Comp(File file) {
this.file = file;
}
public File getFile() {
return file;
}
}
File - это @Bean из видео)
Мои контакты: vk.com/id1854811
Я правильно понимаю, что configuration с @bean это аналог xml конфигурации?
@@ЕвгенийСавинов-з5р Да, все верно)
А такой вопрос, если у меня КЛАСС не является бином, но внутрь него я хочу за автоварить бин. Я должен этот КЛАСС, вписать в applicationContext чтоб когда он поднимал контекст, внутри него он нашёл @Autowired и соответственно смог внедрить компонент в КЛАСС который не является бином?
@@ЕвгенийСавинов-з5р Так нельзя) В контейнер нужно помещать именно бины) Этот класс должен быть именно компонентом, а не обычным классом)
Спасибо