Главная > Программирование > Программирования сетевых взаимодействий в Java
<< Предыдущий параграф
Следующий параграф >>
<< Предыдущий параграф Следующий параграф >>
Макеты страниц

1.8. Серверные сокеты TCP/IP

Как уже упоминалось, в Java имеются различные классы сокетов, которые должны применяться для создания серверных приложений. Класс ServerSocket используется для создания серверов, которые прослушивают обращения как локальных, так и удаленных клиентских программ, желающих установить соединения с ними через открытые порты. ServerSocket сильно отличается от обычных Socket. Когда вы создаете ServerSocket, он регистрирует себя в системе в качестве заинтересованного в клиентских соединениях. Конструкторы ServerSocket отражают номер порта, через который вы хотите принимать соединения, а также - необязательно - длину очереди для данного порта. Длина очереди сообщает системе о том, сколько клиентских соединений можно удерживать, прежде чем начать просто отклонять попытки подключения. По умолчанию установлено 50. При определенных условиях конструкторы могут возбуждать исключение IOException. Конструкторы этого класса.

ServerSocket(int port) throws IOException. Создает серверный сокет на указанном порте с длиной очереди 50.

ServerSocket (int port, int maxQueue) throws IOException. Создает серверный сокет на указанном порте с максимальной длиной очереди в maxQueue.

ServerSocket(int port, int maxQueue, InetAddress localAddress) throws IOException. Создает серверный сокет на указанном порте с максимальной длиной очереди в maxQueue. На групповом хосте localAddress указывает IP-адрес, к которому привязан сокет.

ServerSocket включает метод по имени accept(), представляющий собой блокирующий вызов, который будет ожидать от клиента инициации соединений, и затем возвратит нормальный объект Socket, который далее может служить для взаимодействия с клиентом.

<< Предыдущий параграф Следующий параграф >>