Встречается на собеседованиях • сегодня

Один ли экземпляр бина @Component класса создается, если он используется в трех разных местах через @Autowired

По умолчанию Spring создает один экземпляр бина с аннотацией @Component (синглтон). Этот экземпляр будет использоваться везде, где бинаутовлен через @Autowired.

Пример:

java
@Component
public class ServiceA {}

@Service
public class ServiceB {
@Autowired
private ServiceA serviceA;
}

@Controller
public class ControllerC {
@Autowired
private ServiceA serviceA;
}

text

Здесь `ServiceA` будет один на весь контекст Spring, и оба поля `serviceA` в `ServiceB` и `ControllerC` получат ссылку на один и тот же объект. Это поведение можно изменить, указав другую область видимости, например `@Scope("prototype")`.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы