| engineerklub | Дата: Среда, 05.10.2022, 13:25 | Сообщение # 1 |
 Генералиссимус
Группа: Администраторы
Сообщений: 37408
Статус: Offline
| Технология разработки телекоммуникационных сервисов. Общий вариант
Тип работы: Работа Лабораторная Сдано в учебном заведении: ДО СИБГУТИ
Описание: Лабораторная работа №2
РЕАЛИЗАЦИЯ КЛИЕНТ-СЕРВЕРНОЙ АРХИТЕКТУРЫ С ПОМОЩЬЮ СОКЕТОВ
Цель работы:Изучение методов программирования сокетов с использованием пакета java.net.
Подготовка к лабораторной работе:
1. Изучить лекционный материал дисциплины "Технологии разработки телекоммуникационных сервисов" по темам "Распределённые приложения" и "Реализация клиент-серверной архитектуры на сокетах".
2. Изучить соответствующие разделы в литературе [3, 4].
3. Повторить принципы работы в среде Eclipse.
Краткая теория
В данной лабораторной работе используются классы и методы пакета java.net, поэтому в начале программы необходимо вставить строки импорта содержимого пакетов:
import java.net.*;
import java.io.*;
Вторая строка необходима для использования классов потокового ввода-вывода:
· InputStream
· OutputStream
· DataInputStream
· DataOutputStream
иихметодов:
· getInputStream()
· getOutputStream()
для передачи данных от клиента к серверу и наоборот.
Для соединения компьютеров необходимо определить адрес узла, на котором будет запущен сервер и порт приложения, обрабатывающего полученную информацию.
Системными службами зарезервированы порты с 1 по 1024, поэтому для своего приложенияможно использовать любой другой порт.
Чтобы получить javaобъект IPадреса хоста необходимо использовать статический метод InetAddress.getByName() класса InetAddressпакета java.net.
Приведённый ниже пример иллюстрирует использование метода InetAddress.getByName()для получения своего IPадреса в виде javaобъекта.
СКАЧАТЬ
|
| |
|
|
| engineerklub | Дата: Среда, 05.10.2022, 13:26 | Сообщение # 2 |
 Генералиссимус
Группа: Администраторы
Сообщений: 37408
Статус: Offline
| Тип работы: Работа Лабораторная Сдано в учебном заведении: ДО СИБГУТИ
Описание: Лабораторная работа №3
РАЗРАБОТКА МНОГОПОТОЧНОГО СОКЕТА
Цель работы:Изучение методов программирования многопоточных сокетов с использованием пакетов java.net и java.lang.
Подготовка к лабораторной работе:
1. Изучить лекционный материал дисциплины "Технологии разработки телекоммуникационных сервисов" по темам: "Архитектура клиент-сервер. Сокеты", "Разработка многопоточного сокета".
2. Изучить соответствующие разделы в литературе [1-4].
3. Повторить принципы работы в среде Eclipse.
Краткая теория
Серверный сокет, поддерживающий общение с множеством клиентов одновременно, должен быть многопоточным.
Каждый поток создаётся и управляется объектом класса java.lang.Thread. Для поддержки сокетов и функций ввода-вывода необходим импорт пакетов:
import java.net.*;
import java.io.*;
Одним из способов создать поток является расширение класса Thread (нить).Класс, расширяющий Thread, переопределяет метод run() данного класса (код выполняемый потоком).Чтобы поток получил право на выполнение, конструктор потока вызывает метод start(), унаследованный от Thread. Приэтомзапуститсяметодrun().
Примерработыспотоками:
public class Talk extends Thread {
public void run() {
for (int i = 0; i< 8; i++) {
System.out.println("Talking");
try {
Thread.sleep(400);// остановкана 400 миллисекунд
} catch (InterruptedException e) {
System.err.print(e);
}
}
}
}
publicclassTalkTalk {
public static void main(String[] args) {
Talk talk = newTalk();
talk.start();
}
}
Для реализации сервера необходимо создать поток, расширяющий класс Thread, который содержит метод run(), реализующий функции сервера.
Примечание: В нашем примере функции сервера заключаются в том, чтобы принять от клиента текстовую строку и вернуть её назад (см. лабораторную работу №2).
СКАЧАТЬ
|
| |
|
|