Úvod do programování Socket v Javě

World Wide Web and Internet změnil způsob, jakým žijeme a spolu komunikujeme, a způsob, jakým vedeme vědu, strojírenství a obchod. Moderní život je zcela poháněn nebo soustředěn kolem internetu. Podniky neustále hledají nové způsoby, jak produkovat a komunikovat s různými službami novým způsobem a zavádět inovace. V tomto článku se budeme věnovat programování Socket Programming v Javě.

Zásuvky poskytují rozhraní pro programování sítí transportní vrstvy modelu OSI. Síťová komunikace pomocí soketů je všudypřítomná po celém internetu. Kromě toho může soketový program napsaný v jazyce Java komunikovat s soketovým programem napsaným v jiném jazyce než Java, jako je C, C ++, Python atd.

Metody třídy Socket

Metody třídy Socket se nacházejí v Javě. Soket je vázán na číslo portu, takže TCP rozpozná číslo portu, na které mají být data odeslána. Java poskytuje sadu tříd, z nichž jedna je java.net. Používá se pro rychlý vývoj síťových aplikací. Klíčové třídy, rozhraní a výjimky obsažené v balíčku java.net zjednodušují složitost vytváření klientských a serverových programů:

Třídy jsou:

  • Obsluha obsahu
  • Datový paket
  • Zásuvka pro datagram
  • Zásuvka s datovýmgramem 1
  • HTTP URL připojení
  • I čistá adresa
  • Zásuvka pro vícesměrové vysílání
  • Socket serveru
  • Zásuvka
  • Socket Imp 1
  • URL
  • Připojení URL
  • URL Encoder
  • Obsluha streamu URL

Rozhraní jsou:

  • Factory Handler Factory
  • Mapa názvu souboru
  • Socket Impl Factory
  • Factory Stream Handler Factory

Výjimky jsou:

  • Vazba výjimka
  • Připojit výjimku
  • Výjimka s chybnou adresou URL
  • Žádná cesta k hostitelské výjimce
  • Výjimka protokolu
  • Výjimka soketu
  • Neznámá výjimka hostitele
  • Neznámá výjimka pro službu.

Programování soketů TCP / IP

Z balíčku java.net se používají dvě třídy, které se používají při vytváření programů. Oni jsou:

  • Socket serveru
  • Zásuvka

Serverový program komunikuje prostřednictvím vstupních a výstupních toků. Pokud existuje požadavek na připojení, pak nastane nová zásuvka, která přichází do hry, a zde je navázáno spojení.

Metoda 1 - Vytvoření programu serveru Socket

Existují různé kroky pro vytvoření programu soketu serveru v Javě. Jednoduché kroky vytvoření programu soketu serveru jsou následující:

Krok 1 - Socket Server je otevřen

Server Socket General = nový server Socket (PO)

Zde PO je číslo portu.

Zde je číslo portu přiřazeno k síti serveru, přes kterou bude komunikovat pomocí vstupních / výstupních toků.

Krok 2 - Existuje požadavek klienta, na který musíme trpělivě čekat

Socket General = server. přijmout()

Tady Server. akceptovat () čeká na klienta a název soketu je zde klient.

Krok 3 - Vytvoří se I / O toky tak, aby bylo navázáno připojení

Stream vstupů dat = nový Stream vstupů dat (klient. Získat vstupní tok ());

Stream výstupů dat = nový Stream výstupů dat (klient. Get Output Stream ());

Vstupní tok je a výstupní tok os je přiřazen jejich Get Input Stream () a jsou nazývány příslušně.

Krok 4 - Je vytvořen kontakt s klientem

Příjem od klienta: String hello = br. Řádek čtení ();

Zašlete jej klientovi: br. Napište bajty („Jak se máš \ n“);

Následující kód komunikuje s klientem přijímáním a odesíláním požadavků klientovi.

Krok 5 - Nakonec je Socket ukončen

Nakonec se k uzavření a ukončení programování soketu používá funkce uzavření soketu.

Níže je uveden jednoduchý příklad soketu serveru:

// Jednoduchý program pro připojení serveru.

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(); )
)

Metoda 2 - Vytvoření programu Simple Server Socket

Nyní uvidíme program Simple Client v Javě. Kroky pro vytvoření jednoduchého klientského programu v Javě jsou uvedeny níže:

Krok 1 - Je vytvořen objekt Socket

Socket client = new Socket (server, port_id)

Server a ID portu jsou připojeny, to znamená, že server je připojen k ID portu.

Krok 2 - Vytvoří se vstupní / výstupní toky

is = new Data Input Stream (client.getInputStream ());

os = nový datový tok dat (client.getOutputStream ());

Input Stream je a Output Stream os se používá pro komunikaci s klientem.

Krok 3 - Vstupní / výstupní toky jsou vytvořeny pro komunikaci s klientem

Data jsou čtena ze serveru: String hello = br. readLine ();

Odesílání dat na server: br.writeBytes („Jak se máš \ n“)

Tento krok komunikuje se serverem. Vstupní i výstupní tok komunikují se serverem.

Krok 4 - Po dokončení uzavřete zásuvku

Tato funkce uzavře klienta, jakmile je hotovo.

Níže je uveden příklad jednoduchého programu soketu serveru

// Jednoduchý program pro klienta

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();
)
)

Závěr - Programování Socket v Javě

  • Programování soketu je velmi užitečné v Javě a v jakémkoli jiném programovacím jazyce v podstatě ze skutečnosti, že program napsaný v Javě se může spojit s programem napsaným v C nebo C ++.
  • Jinými slovy, jazyk soketového programu nezáleží na tom, kdy musí existovat spojení mezi nimi.
  • V tomto článku jsme v podstatě viděli příklad Simple Server a Simple Client, kde existuje spojení mezi soketem serveru a ve druhém je spojení mezi soketem serveru.
  • K tomu jsme použili programování TCP / IP. Existuje však mnoho programovacích technik, jako jsou programovací techniky UDP a techniky programování URL. V tomto článku jsme neviděli příklady takových. Důraz jsme kladli na techniku ​​programování TCP / IP.

Doporučené články

Toto je průvodce programováním Socket v Javě. Zde diskutujeme metody třídy Socket s programem java. Můžete si také prohlédnout naše další doporučené články -

  1. Java balíčky
  2. Kopírovat konstruktor v Javě
  3. Sloučit řazení v Javě
  4. Průvodce nejlepšími kompilátory Java
  5. Příklad balíčku Java | Příklad práce a kódování

Kategorie: