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

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

1 ответ

Решение

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

Другие вопросы по тегам