Einer der Vorteile der Java-Sprache besteht darin, dass Java-Programme auf Netzwerkressourcen zugreifen können. Java bietet eine Reihe von Klassen, um Java-Programme beim Zugriff auf Netzwerkressourcen zu unterstützen.
TCP/IP-Protokoll und IP-Adresse
Um im Internet zu kommunizieren, müssen beide Kommunikationsparteien das derzeit am weitesten verbreitete Protokoll einhalten, das ein öffentliches Protokoll ist, dem alle Parteien im Internet folgen ) ist ein Übertragungssteuerungsprotokoll, und IP (Internet Protocol) ist ein Internetprotokoll, und TCP/IP repräsentiert diese beiden Protokolle.
TCP/IP ist in vier Ebenen unterteilt:
Das TCP-Protokoll behandelt jede Netzwerkinformationsübertragung als Informationsfluss. Wenn beispielsweise eine lange Nachricht von Maschine A an Maschine B gesendet wird, muss Absender A die Daten fragmentieren und jedes Datenelement einzeln verpacken und senden. Das Datenpaket verfügt über einen Header, der angibt, wohin das Datenpaket gesendet wird und die Position der Daten in der Empfangssequenz. Jedes Paket wird von einer Maschine zu einer anderen Maschine oder von einem Netzwerkknoten zu einem anderen Netzwerkknoten übertragen, je nachdem, welches Ziel durch die IP-Adresse angegeben wird. Auf der Empfangsseite B können diese Datenpakete wieder in der richtigen Reihenfolge zusammengesetzt werden.
Das TCP/IP-Protokoll ist eine Protokollsuite, die aus einer Reihe von Protokollen besteht, zu denen hauptsächlich die folgenden spezifischeren Protokolle gehören:
Telnet (Remote-Anmeldung): ermöglicht es einem Computerbenutzer, sich bei einem anderen Remote-Computer anzumelden und Remote-Vorgänge so durchzuführen, als würden sie auf dem lokalen Computer arbeiten.
FTP (File Transfer Protocol): ermöglicht Benutzern das Kopieren von Dateien von einem Remote-Host auf ihren eigenen Computer.
SMTP (Simple Mail Transfer Protocol): Wird zum Übertragen von E-Mails verwendet.
NFS (Network File Server): Ermöglicht mehreren Computern den transparenten Zugriff auf die Verzeichnisse des anderen.
HTTP: Ein Hypertext-Übertragungsprotokoll, das auf dem TCP/IP-Protokoll basiert und das Kommunikationsprotokoll der Anwendungsschicht zwischen dem WWW-Browser und dem Server ist. HTTP ist ein universelles, zustandsloses, objektorientiertes Protokoll. Eine HTTP-Sitzung (Transaktion) besteht aus vier Schritten: Verbindung, Anfrage, Antwort und Schließen.
Die Java-Sprache kann Low-Level-Netzwerkanwendungen schreiben. Zum Beispiel Dateien übertragen, Mail-Controller erstellen, Netzwerkdaten verarbeiten usw. Zu den von der Java-Sprache unterstützten Internetprotokollen gehören FTP, Telnet, www usw. Die Software, die die Netzwerkkommunikation unterstützt, befindet sich im Paket java.net, zum Beispiel java.net.ftp, java.net.www usw.
Die IP-Adresse wird verwendet, um die Adresse eines Computers im Internet im Netzwerk anzugeben, wobei ein 32-Bit-Binärcode zur Darstellung einer Netzwerkadresse verwendet wird. Adressen sind in fünf Kategorien unterteilt: A, B, C, D und E. Die am häufigsten verwendeten Kategorien sind A, B und C:
A (1.0.0.0-126.255.255.255): 0,7-stellige Netzwerknummer, die letzten 24 Ziffern sind die Hostnummer;
B (128.0.0.0-191.255.255.255): 10, 14-stellige Netzwerknummer, die letzten 16 Ziffern sind die Hostnummer;
C (192.0.0.0-223.255.255.255): 110, 21-stellige Netzwerknummer, die letzten 8 Ziffern sind die Hostnummer;
D (224.0.0.0-239.255.255.255): 1110, 28-Bit-Multicast-Gruppennummer;
E (240.0.0.0-254.255.255.255): 1111, reserviert für Testzwecke.
Normalerweise wird eine IP-Adresse durch eine Dezimalzahl mit vier Segmenten (ein Segment mit 8 Ziffern) dargestellt. Zum Beispiel:
58.218.204.252
Oder dargestellt durch einen Textdomänennamen. Zum Beispiel:
www.VeVB.COm
Im Internet führt der Domain Name Server (DNS) die Zuordnung von Literalnamen zu binären Netzwerkadressen durch.
InetAddress-Klasse
Im Java.net-Paket gibt es eine Definition der InetAddress-Klasse. Die Objekte der InetAddress-Klasse werden für IP-Adressen und Domänennamen verwendet.
getByName(String s): Rufen Sie ein Objekt der InetAddress-Klasse ab, das die IP-Adresse und den Domänennamen des Hosts enthält. Das Objekt stellt die darin enthaltenen Informationen im folgenden Format dar: www.sina.com.cn/202.108.37.40;
String getHostName(): Ruft den Domänennamen des InetAddress-Objekts ab;
String getHostAddress(): Ruft die IP-Adresse des InetAddress-Objekts ab;
getLocalHost(): Rufen Sie ein InetAddress-Objekt ab, das den Domänennamen und die IP-Adresse des lokalen Computers enthält.
[Beispiel] Eine Anwendung, die die Verwendung der Inetaddress-Klasse erklärt. Das Programm zeigt, wie Sie den Domänennamen und die IP-Adresse von www.weixueyuan.net erhalten.
Import java.net.*;Klasse Beispiel10_1{ Public static void main(String args[]){ Try{ //Der folgende Code erstellt ein InetAddress-Objekt über den Domänennamen: InetAddress addr = InetAddress.getByname("www.VeVB.COm "); String domainName = addr.getHostName();//Holen Sie sich den Hostnamen String IPName = addr.getHostAddress();//Holen Sie sich die IP-Adresse System.out.println(IPName); }catch(UnknownHostException e){ e.printStackTrace();
Das laufende Ergebnis ist:
www.VeVB.COm58.218.204.252