Расположение хранилища сеансов Struts2 и управление им

Я читал Struts2 In Action, и он говорит, что для каждого запроса создаются экземпляры ActionContext, ValueStack и Action, поэтому они потокобезопасны. Мне было интересно, как фреймворк управляет сеансом, потому что он не может храниться в этих местах, где хранится фактическая карта и как фреймворк управляет одновременным доступом к этой карте?


person Udit Mishra    schedule 17.06.2014    source источник
comment
stackoverflow.com/q/7885525/1700321.   -  person Aleksandr M    schedule 17.06.2014


Ответы (1)


Сеанс http хранится в SessionMap, который среди других карт контекста сохраняется в контексте действия диспетчером при обслуживании запроса. Карта сеанса является оболочкой для объекта сеанса http, и такие операции, как get/put, синхронизируются с использованием монитора объекта сеанса http. Он просто синхронизирует доступ к атрибутам сеанса http, но обеспечивает реализацию Map.

person Roman C    schedule 17.06.2014