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

Что будет лежать в контексте, если Scope первого бина - Singlenon, второго бина - Prototype в Spring проекте

В контексте Spring:

  • Singleton бин создаётся один раз при старте контекста и существует всё время его жизни. Все инъекции этого бина получат одну и ту же instance.
  • Prototype бин создаётся каждый раз заново при запросе (через getBean() или инъекцию).

Важный нюанс: если Prototype бин инжектится в Singleton, то он инициализируется только один раз (при создании Singleton), и все обращения к нему будут к одному экземпляру.

Пример:

java
@Component
@Scope("singleton")
class SingletonBean {
    @Autowired
    private PrototypeBean prototypeBean; // Будет один экземпляр на весь SingletonBean
}

@Component
@Scope("prototype")
class PrototypeBean {
    // Каждый новый запрос создаёт новый экземпляр
}
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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