Jacek Rumiński - Język JAVA - Rozdział 8
Powyższy program umożliwia pobranie źródła wskazanego pliku {html) i wyświetlenie go na ekranie. Można oczywiście tak skonstruować strumień aby pobierany plik był nagrywany do lokalnego pliku i w ten sposób stworzyć narzędzie do kopiowania stron z Internetu. W przykładzie zastosowano konstrukcję obiektu klasy URL poprzez podanie argumentu do konstruktora jako tekstu (String) będącego argumentem wywołania aplikacji. Przykładowe wywołanie aplikacji może być następujące:
w wyniku czego uzyskamy wydruk:
<!doctype html public M-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
<meta name="Author" content-' Jacek Ruminski">
<meta name="GENERATOR" content="Mozilla/4.6 [en-gb] (WinNT; I) [Netscape]">
<title> Jeżyk JAVA - wyklad</title>
</head>
<body text="#FFFFFF" bgcolor="#330033" link="#0000EE" vlink="#551A8B" alink="#FF0000">
<center><b><i><font size=+3>Jrzyk <img SRC="javalogo.gif" height=88 width=52
align=ABSCENTER>
wyk | ad</font></i></b>
<br>
<p><img SRC="jav_logo.jpg" height=125 width=260>
<p><b><font color="#CC0000"xfont size=+1>Plan wyk | adu:</fontx/fontx/b></center>
(...)
Do komunikacji poprzez Internet programy Javy wykorzystują protokoły TCP i UDP. Klasy URL* oraz Socket i ServerSocket wykorzystują Transfer Control Protocol klasy takie jak DatagramPacket, DatagramSocket, oraz MulticastSocket korzystają z User Datagram Protocol. W pakieciejava.net zdefiniowane są jeszcze inne klasy, z których warto przytoczyć te związane z autoryzacją połączeń i nadawaniem uprawnień: Authenticator, NetPermission, PasswordAuthentication,
W aplikacjach klient-serwer, serwer dostarcza określonej usługi np. przetwarza zapytanie skierowane do bazy danych, zapisuje serię obrazów diagnostycznych. Klient wykorzystuje usługi świadczone przez serwer i jest odpowiedzialny za żądanie usługi oraz obsługę wyników. Funkcje pełnione przez każdą ze stron można ująć następująco:
- połączenie z urządzeniem zdalnym (przygotowanie wysyłania i odbioru danych),
- wysyłanie danych,
- odbiór danych,
- zamknięcie połączenia,
- przywiązanie portu (dla danej aplikacji na danym hoście),
8-14