Примечание:
В большинстве случаев проще создать и развернуть аннотированную конечную точку, чем программную. Эта глава сфокусирована на аннотированных конечных точках, хотя ниже приведён простой пример программной конечной точки.
Java Platform, Enterprise Edition (Java EE) 8 Учебник по Java EE |
Назад | Вперёд | Содержание |
Платформа Java EE включает Java API для веб-сокетов (JSR 356), который позволяет создавать, настраивать и развёртывать конечные точки веб-сокетов в веб-приложениях. API клиента веб-сокета, указанный в JSR 356, также позволяет получать доступ к удалённым конечным точкам веб-сокетов из любого приложения Java.
Java API для веб-сокетов состоит из следующих пакетов.
Пакет javax.websocket.server
содержит аннотации, классы и интерфейсы для создания и настройки конечных точек сервера.
Пакет javax.websocket
содержит аннотации, классы, интерфейсы и исключения, которые являются общими для конечных точек клиента и сервера.
Конечные точки веб-сокетов являются объектами класса javax.websocket.Endpoint
. Java API для веб-сокетов позволяет создавать два вида конечных точек: программные конечные точки и аннотированные конечные точки. Чтобы создать программную конечную точку, расширьте класс Endpoint
и переопределите его методы жизненного цикла. Чтобы создать аннотированную конечную точку, вы отмечаете класс Java и некоторые его методы аннотациями, предоставленными пакетами, упомянутыми ранее. После создания конечной точки вы развёртываете её в определённом URI в приложении, чтобы удалённые клиенты могли к ней подключаться.
Примечание: В большинстве случаев проще создать и развернуть аннотированную конечную точку, чем программную. Эта глава сфокусирована на аннотированных конечных точках, хотя ниже приведён простой пример программной конечной точки. |
Процесс создания и развёртывания конечной точки веб-сокета:
Создайте класс конечной точки.
Реализуйте методы жизненного цикла конечной точки.
Добавьте свою бизнес-логику в конечную точку.
Разверните конечную точку внутри веб-приложения.
Процесс немного отличается для программных конечных точек и аннотированных конечных точек, и он подробно рассматривается в следующих разделах.
Примечание: В отличие от сервлетов конечные точки веб-сокетов создаются несколько раз. Контейнер создаёт объект конечной точки для каждого соединения с его URI развёртывания. Каждый объект связан с одним и только одним соединением. Это облегчает сохранение состояния пользователя для каждого соединения и облегчает разработку, поскольку в любой момент времени только один поток выполняет код объекта конечной точки. |
Назад | Вперёд | Содержание |