Мы используем файлы cookie
Мы используем файлы cookie для улучшения работы сайта и предоставления вам персонализированного опыта. Правила использования файлов cookie можно найти в нашей политике конфиденциальности
Бин с областью видимости prototype
, внедренный (инжектированный) в синглтон-бин, будет создан один раз при инициализации синглтона и далее использован многократно (одна и та же его копия) при каждом обращении к нему из синглтона. Spring создает прототипный бин при каждом запросе к нему из контейнера. В случае инъекции в синглтон, запрос происходит только при создании синглтона.
Чтобы решить эту проблему и получать новый экземпляр прототипного бина при каждом обращении, можно использовать следующие подходы:
Внедрение ApplicationContext
: Получать бин из контекста явно каждый раз.
java
Внедрение ObjectFactory<PrototypeBean>
или Provider<PrototypeBean>
: Spring предоставит прокси, который при вызове getObject()
(для ObjectFactory
) или
Бин с областью видимости prototype
, внедренный (инжектированный) в синглтон-бин, будет создан один раз при инициализации синглтона и далее использован многократно (одна и та же его копия) при каждом обращении к нему из синглтона. Spring создает прототипный бин при каждом запросе к нему из контейнера. В случае инъекции в синглтон, запрос происходит только при создании синглтона.
Чтобы решить эту проблему и получать новый экземпляр прототипного бина при каждом обращении, можно использовать следующие подходы:
Внедрение ApplicationContext
: Получать бин из контекста явно каждый раз.
java
Внедрение ObjectFactory<PrototypeBean>
или Provider<PrototypeBean>
: Spring предоставит прокси, который при вызове getObject()
(для ObjectFactory
) или
Зарегистрируйтесь или войдите, чтобы получить доступ к полным ответам на все вопросы из банка вопросов.