Lekce 8 - Síť v Javě - Třída Socket
V minulé lekci, Síť v Javě - Práce s InetAddress, jsme se seznámili s třídou java.net.InetAddress, představili jsme si její metody a ukázali si jejich použití na praktických příkladech.
Třídy URL a URLConnection, kterými jsme se zabývali v dřívějších
článcích, jsou vytvořeny na poměrně vysokém stupni abstrakce a jsou
použitelné pouze pro specifický případ komunikace s WWW serverem. Některé
jiné aplikace ale fungují na nižších síťových úrovní např. aplikace
typu klient/server. V dnešním Java tutoriálu si tedy představíme třídu
java.net.Socket
a její metody pro práci se sítí, které
využijeme právě u těchto aplikací.
Co to je klient/server aplikace?
Jedná se o aplikace, kde server poskytuje nějaké služby, např. vyhledávání v databázi. Klient posílá dotazy a čeká na odpovědi. Komunikace mezi nimi musí být spolehlivá, žádná data se nesmí ztratit a musí dojít ve správném pořadí.
Server většinou poslouchá na specifickém portu a čeká na požadavky od klientů o navázání spojení. Při požadavku na vytvoření spojení si klient vytvoří lokální číslo portu a spojí ho se socketem. Klient potom komunikuje se serverem tak, že čte a zapisuje do socketu.
A podobně také server při příchodu požadavku vytvoří nové číslo
portu (protože musí poslouchat ostatní klienty na stále stejném čísle
portu) a spojí ho se svým socketem. Potom i server komunikuje s klientem
pomocí socketu, který může číst nebo do něj zapisovat. Socket je tedy
jeden konec dvoustranného komunikačního spojení mezi dvěma programy
běžícími na síti. Balík java.net
nabízí dvě třídy
implementující klientskou resp. serverovskou stranu spojení.
...konec náhledu článku...
Pokračuj dál
Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.
Koupit tento kurz
Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.
- Neomezený a trvalý přístup k jednotlivým lekcím.
- Kvalitní znalosti v oblasti IT.
- Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.
Popis článku
Požadovaný článek má následující obsah:
V dnešním článku si popíšeme třídu Socket z balíku java.net.* včetně základních metod a příkladů použití.
Kredity získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.