Сессия состояния bean определяется следующим образом:
Сессия состояния Beans Состояние объекта состоит из значений его переменных экземпляра. В сеансе с состоянием bean экземпляр переменные представляют состояние уникального сеанса client-bean. Потому как клиент взаимодействует ( "переговоры" ) со своим bean, это состояние часто называемое диалоговым состоянием.
Безстоящий сеанс bean определяется следующим образом:
Безстоящий сеанс Beans Сеанс без состояния bean не поддерживает диалоговое состояние с клиентом. Когда клиент вызывает методы безстоящих bean, переменные экземпляра bean могут содержать состояние, специфичное для этого клиента, но только на время призывание. Когда метод завершен, состояние, специфичное для клиента не следует сохранять. Однако клиенты могут изменять состояние переменные экземпляра в объединенном состоянии без состояния beans, и это состояние сохраняется до следующего вызова объединенного апатрида bean. Кроме во время вызова метода все экземпляры безстоящего bean являются эквивалент, позволяя контейнеру EJB назначать экземпляр любому клиент. То есть, состояние сеанса без состояния bean должно применяться через всех клиентов.
Также упоминается преимущество сеанса без состояния bean следующим образом:
Поскольку сеанс без состояния Beans может поддерживать несколько клиентов, они могут предлагают лучшую масштабируемость для приложений, требующих больших чисел клиентов. Как правило, для приложения требуется меньше сеанса без сохранения состояния Beans, чем сеанс с состоянием Beans для поддержки того же числа клиентов.
Итак, возникает вопрос, когда нужно использовать сеанс с состоянием beans? К моему наивному пониманию этого вопроса, нужно придерживаться безстоящего сеанса bean, как он может.
Какими будут кандидаты, в которых следует использовать сеанс с состоянием bean? Какие-нибудь хорошие примеры?