Junior — Middle
107
Објасните разлике између scope-ова бина Singleton и Prototype у контексту управљања животним циклусом објеката Spring
Одговор од АИ
sobes.tech АИ
В Spring Framework скоупы бинов определяют жизненный цикл и область видимости объектов.
-
Singleton — это скоуп по умолчанию. Всякий раз, когда запрашивается бин с этим скоупом, возвращается один и тот же экземпляр на весь контекст Spring. Это экономит ресурсы и гарантирует единообразие состояния.
-
Prototype — при каждом запросе создаётся новый экземпляр бина. Spring не управляет полным жизненным циклом таких бинов (например, не вызывает методы уничтожения).
Таким образом, Singleton подходит для сервисов с общим состоянием, а Prototype — для объектов, которые должны быть уникальными при каждом использовании.
Пример определения бина с Prototype скоупом:
@Component
@Scope("prototype")
public class MyPrototypeBean {
// ...
}