Сессия - это просто хэш-карта, которая является одноэлементной на пользователяТаким образом, вы можете думать, что у каждого пользователя есть своя хэш-карта, которая позволяет ему хранить объекты.В сервлете сеанс обеспечивается интерфейсом HttpSession
.
Сеансовый механизм зависит от архитектуры вашего приложения. Если это реализация с толстым клиентом, которая содержит только 2 уровня (уровень базы данных и клиент Java), и большинство бизнес-кодов встроены внутрьjava-приложение, то у каждого пользователя есть своя JVM для запуска java-кода на своих компьютерах. Таким образом, вы просто создаете одноэлементную хеш-карту для настольного приложения. Когда приложение запускается, просто инициализируйте эту хеш-карту и введите ключ и его логическое значение.чтобы указать статус входа пользователя (например, singltonHashmap.put ("LOGIN" , false)
). После входа пользователя вы должны обновить значение ключа LOGIN до true, чтобы указать, что пользователь вошел в систему.
Если Java-приложение для настольных компьютеров является реализацией тонкого клиента, у которого есть сервер приложений для обработки всех запросов от всех пользователей, то вы можете использовать stateful session bean
, определенный Enterprise JavaBeans specification (EJB)
.сопоставление to-one между клиентом и экземпляром сессионного компонента с сохранением состояния. Сервер приложений будет следить за тем, чтобы последующие вызовы метода одним и тем же клиентом обрабатывались одним и тем же экземпляром с сохранением состояния.Вы просто объявляете хеш-карту в сессионных компонентах с состоянием и помещаете объекты, которые вы хотите отслеживать во время диалога, в эту хеш-карту.Вот пример для вашей справки.