Lekce 11 - Síť v Javě - Klient/Server - Obousměrná komunikace
V minulé lekci, Síť v Javě - Klient/Server - Jednosměrná komunikace, jsme si vytvořili první aplikaci typu klient-server s jednosměrnou komunikací a obsluhou jednoho klienta.
V předchozích dílech našeho Java tutoriálu jsme si ukázali příklad jednosměrné komunikace u síťové aplikace typu klient/server. Šlo o docela triviální příklad, kdy server nečetl žádná data od klienta a obsluhoval vždy pouze jednoho klienta. Dnes si ukážeme příklad obousměrné komunikace, přičemž spolu vytvoříme server, který bude od klienta přijímat text, ten následně upraví (např. změní velikost písmen) a bude jej posílat zpět.
Obousměrná komunikace
V našem příkladu obousměrné komunikace bude server rovněž umožňovat zpracovat více klientů najednou. Toho docílíme pomocí vláken. Když se klient připojí, server vytvoří vlákno vyhrazené danému klientovi. Server bude moci naslouchat a obsluhovat ostatní klienty souběžně.
Server s vlákny
Vlákna na straně serveru umožňují souběžné zpracování více
klientů. Klient tedy nemusí čekat, až bude předchozí obsloužen, ale
může přistupovat k serveru okamžitě. Při vytváření našeho serveru
opět využijeme blok try-with-resources, který komunikaci na
konci bloku automaticky uzavře.
Import balíčků
Na začátku si naimportujeme tyto balíky:
import java.io.IOException; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; import java.util.Scanner; import java.util.concurrent.Executors;
Všimněme si balíku java.util.concurrent,
...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 pouze tento kurz
Získej okamžitý přístup ke kurzu bez
časového omezení.
725 Kč
Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.
- Přístup k jednotlivým lekcím dle způsobu pořízení.
- 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 tomto článku si prohloubíme naše dosavadní znalosti a ukážeme si obousměrnou komunikaci síťové aplikace typu klient/server.
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íť.