Внутренние компоненты фасоли в виде запроса весны - PullRequest
0 голосов
/ 11 июня 2018

Я использовал bean-объекты в области запроса для моего приложения, и мне любопытно узнать, как Spring хранит такие bean-компоненты в контексте приложения?есть ли с ним ссылка http reuqest?любая помощь / документация приветствуется, поскольку я не нашел много об этом.

1 Ответ

0 голосов
/ 11 июня 2018

Каждый Scope имеет свою собственную реализацию, которая знает, как и где хранятся объекты.Область запроса, реализованная с помощью RequestScope, сохраняет объект в атрибутах запроса (см. sources ).

Что делает Spring, когда находит bean-объект области действия(т. е. bean-компонент с @Scope или специальной аннотацией, такой как @RequestScope, @SessionScope), предназначен для создания прокси этого объекта.Прокси-сервер выполнит поиск фактического экземпляра объекта (или создаст его и сохранит), используя ранее упомянутый экземпляр Scope.Затем он передаст вызов метода фактическому экземпляру.

Вы можете проверить это, посмотрев bean-компонент с областью действия @Autowired, и вы увидите, что это на самом деле прокси, а не реальный экземпляр.

Текущий запрос доступен весной через RequestContextHolder.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...