Ú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 -
- Java balíčky
- Kopírovat konstruktor v Javě
- Sloučit řazení v Javě
- Průvodce nejlepšími kompilátory Java
- Příklad balíčku Java | Příklad práce a kódování