Сценарии использования bean-объектов на основе Request и Session - PullRequest
2 голосов
/ 15 декабря 2011

Может ли кто-нибудь перечислить примеры практического использования bean-компонентов с областями действия Request, Session и Global-Session?В большинстве проектов я использовал синглтон и прототип.Я понимаю, что bean-объекты области видимости создаются для каждого запроса, а в bean-объектах, определяемых сессией, создаются bean-объекты при запуске сеанса.

Пожалуйста, ознакомьте меня с практическими аспектами.

1 Ответ

2 голосов
/ 15 декабря 2011

Пока что мы используем запрос бобов области действия для получения информации, которая должна быть действительной только на одной странице, например, в результате поиска или подтверждения заказа. Бин будет действителен до перезагрузки страницы.

bean-объект сессионной области полезен для хранения информации аутентификации, которая становится недействительной при закрытии сессии (по таймауту или по выходу из системы). Вы также можете хранить другую пользовательскую информацию, которую не хотите загружать при каждом запросе. Или другой вариант использования для нас - сохранить область разговора в области сеанса, которую мы используем для сохранения информации между запросами, но для этого мы можем назначить пользовательское время ожидания и условие аннулирования.

Практически любая информация, которая должна быть доступна после того, как запрос должен быть сохранен в области сеанса. Единственное исключение, которое мы используем, - область просмотра , которая хранит информацию в карте просмотра страницы, которая будет доступна после запросов ajax, например, в wizzards.

Однако одноэлементная область означает, что информация существует только один раз для каждого приложения, поэтому, если два пользователя запросят вашу страницу, они получат доступ к одной и той же информации. Это полезно для контроллеров, так как они все равно не должны хранить данные.

Область действия прототипа - это то же самое, что инициализация объекта новым, поскольку он создается каждый раз, когда вы внедряете его. Мы сейчас вообще не используем это.

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