Введення в програмування сокетів на Java

Всесвітня павутина та Інтернет змінили спосіб життя та спілкування один з одним та спосіб ведення науки, техніки та торгівлі. Сучасне життя повністю ведеться навколо чи зосереджується навколо Інтернету. Підприємства постійно шукають нові способи виробництва та спілкування з різними службами по-новому, впроваджуючи інновації. У цій статті ми обговоримо програмування Socket на Java.

Сокети забезпечують інтерфейс для програмування мереж транспортного рівня моделі OSI. Мережеві комунікації за допомогою розеток зустрічаються всюди в Інтернеті. На додаток до цього, програма сокетів, написана на Java, може спілкуватися з програмою socket, написаною мовою, що не є Java, на зразок C, C ++, Python тощо.

Методи класу розетки

Методи класу Socket можна знайти на Java. Сокет повинен бути номером порту, щоб TCP розпізнавав номер порту, в який мають бути надіслані дані. Java пропонує набір класів, одним з яких є java.net. Це використовується для швидкого розвитку мережевих додатків. Основні класи, інтерфейси та винятки, які присутні в пакеті java.net, спрощують складність створення клієнтських та серверних програм:

Класи:

  • Обробник вмісту
  • Пакет дейтаграм
  • Розетка дейтаграми
  • Datagram Socket Imp 1
  • Підключення URL-адреси HTTP
  • Я чиста адреса
  • Багатоадресна розетка
  • Розетка сервера
  • Розетка
  • Розетка Imp 1
  • URL-адреса
  • Підключення URL-адреси
  • URL-кодер
  • Обробник потоку URL-адрес

Інтерфейси:

  • Завод обробника вмісту
  • Карта імені файлу
  • Фабрика розетки Impl
  • Фабрика обробника потоку URL-адрес

Винятки становлять:

  • Прив’язати виняток
  • Підключення винятку
  • Виняток із неправильною формою URL-адреси
  • Немає маршруту до винятку для господаря
  • Виняток з протоколу
  • Виняток з розетки
  • Невідомий виняток хоста
  • Невідомий виняток із обслуговування

Програмування розеток TCP / IP

У пакеті java.net є два класи, які використовуються при створенні програм. Вони є:

  • Розетка сервера
  • Розетка

Серверна програма спілкується через вхідні та вихідні потоки. Якщо є запит на підключення, то з’являється новий гніздо, яке вступає в гру і ось з ним встановлено з'єднання.

Спосіб 1 - Створення програми серверного сокета

Існують різні етапи створення програми серверних сокетів на Java. Прості кроки створення програми серверного сокета:

Крок 1 - Сервер сокетів відкрито

Загальний серверний сокет = новий серверний сокет (PO)

Тут PO - номер порту.

Тут номер порту присвоюється серверній мережі, через яку він буде спілкуватися, використовуючи потоки вводу / виводу.

Крок 2 - Існує запит клієнта, якого ми повинні терпляче чекати

Socket General = сервер. accept ()

Тут Сервер. accept () чекає на клієнта, а назва сокета тут - Клієнт.

Крок 3 - Потоки вводу / виводу створюються таким чином, що встановлюється з'єднання

Потік введення даних - це = новий потік введення даних (клієнт. Отримати вхідний потік ());

Os вихідний потік даних os = новий вихідний потік даних (клієнт. Отримати вихідний потік ());

Потоку введення є, а вихідному потоку ОС присвоюється їх Потік введення () і вони називаються відповідно.

Крок 4 - Створюється контакт з Клієнтом

Отримати від клієнта: String hello = br. Рядок читання ();

Надішліть його клієнту: br. Напишіть байти ("Як ви \ n");

Наступний код повідомляє клієнту, який отримує та надсилає клієнту запити.

Крок 5 - Нарешті, Socket робиться для виходу

Нарешті, функція закриття сокета використовується для закриття та завершення програмування розетки.

Нижче показаний простий приклад серверного сокета:

// Проста програма для підключення сервера.

import java.net.*;
import java.io.*;
public class SimpleMachine (
public static void main(String args()) throws IOException (
// On port 1362 server port is registered
ServerSocket soc = new ServerSocket(1362);
Socket soc1=soc.accept(); // Link is accepted after waiting
// Linked with the socket there should be a connection
OutputStream s1out = soc1.getOutputStream();
DataOutputStream dosH = new DataOutputStream (s1out);
// A string command is sent
dosH.writeUTF("Hello how are you");
// The connection can be closed but the server socket cannot.
dosH.close();
s1out.close();
soc1.close(); )
)

Спосіб 2 - Створення простої програми серверного сокета

Тепер ми побачимо Просту програму для клієнтів на Java. Крок створення простої клієнтської програми на Java показаний нижче:

Крок 1 - Зроблено об'єкт сокета

Клієнт Socket = новий Socket (сервер, порт_id)

Сервер і ідентифікатор порту пов'язані, тобто сервер підключений до ідентифікатора порту.

Крок 2 - Створюються потоки вводу / виводу

is = новий потік введення даних (client.getInputStream ());

os = новий вихідний потік даних (client.getOutputStream ());

Потік вводу є, а вихідний потік os використовується для спілкування з клієнтом.

Крок 3 - Потоки вводу / виводу здійснюються для розмови з Клієнтом

Дані читаються з сервера: String hello = br. readLine ();

Надішліть дані на сервер: br.writeBytes ("Як ви \ n")

Цей крок спілкується з сервером. Вхідний і вихідний потік обидва спілкуються з сервером.

Крок 4 - Закрийте розетку, коли закінчите

Ця функція закриє клієнта, коли він остаточно виконаний.

Приклад простої програми з розеткою сервера наведено нижче

// Проста програма для клієнта

import java.net.*;
import java.io.*;
public class SimpleMachineClient (
public static void main(String args()) throws IOException
(
// At port 1325, connection to the server is opened
Socket s1H = new Socket("host", 1325);
// Read the input stream by getting an input file from the socket
Input Stream s1I = s1. getInputStream();
Data Input Stream disH = new Data Input Stream(s1In);
String str = new String (disH.readUTF());
System.out.println(str);
// After it is done, we can close the connection.
disH.close();
s1I.close();
s1H.close();
)
)

Висновок - Програмування сокетів на Java

  • Програмування сокетів дуже корисно для Java та будь-якої іншої мови програмування, в основному з того, що програма, написана на Java, може з'єднуватися з програмою, написаною на C або C ++.
  • Іншими словами, мова програми socket не має значення, коли між ними має бути з'єднання.
  • У цій статті ми в основному бачили приклад Simple Server і Simple Client, коли між сокетним сервером є з'єднання, а в іншій є з'єднання між серверним сокетом.
  • Ми використовували програмування TCP / IP для того ж самого. Однак існує маса методик програмування, таких як методи програмування UDP та методи програмування URL. У цій статті ми не бачили прикладів такого. Ми наголосили на техніці програмування TCP / IP.

Рекомендовані статті

Це посібник з програмування сокетів на Java. Тут ми обговорюємо методи класів Socket з програмою java. Ви також можете ознайомитися з іншими запропонованими нами статтями -

  1. Пакети Java
  2. Копіювання конструктора на Java
  3. Об’єднати сортування в Java
  4. Посібник з кращих компіляторів Java
  5. Приклад пакету Java | Приклад роботи та кодування