3 Häufig gepostete Fragen

3.1 [LANG] Die Sprache Java

3.2 [STRING] Strings

3.3 [IO] Eingabe/Ausgabe, Streams, etc.

3.4 [NET] Netzwerk

3.5 [AWT] Abstract Window Toolkit

3.6 [SWING] Swing, das bevorzugte GUI

3.7 [APPLET] Java-Applets und ihre Zusammenarbeit mit Browsern

3.8 [SERVER] Servlets und andere Server-Implementierungen in Java

3.9 [NONCORE] Klassen/Packages, die über den Kern der Sprache hinausgehen, also Java3D etc.

3.10 [OOP] OOP-Konzepte und Patterns in Java

3.11 [JDK] Virtuelle Maschinen, alles über JDKs und deren Installation und Verwendung

3.12 [TOOLS] Java-Zusatz-Tool, zum Beispiel IDEs, Build-Tools, Profiler, etc.

3.13 [MISC] Alles, was nicht in eine der anderen Rubriken paßt

3.14 [ERROR] Fehlermeldungen


3.4 [NET] Netzwerk

Zurück zu "3 Häufig gepostete Fragen"

3.4.1 Wie kann ich einen Ping in Java realisieren?

Eigentlich gar nicht. Ein Ping (ICMP) ist eine hardwarenahe Angelegenheit, die im Gegensatz zu dem hardwarefernen abstrahierenden Konzept von Java steht. Die Antworten einer Netzwerkkarte sind da nicht so sehr relevant, wie ein im Netzwerk vorhandener Dienst. So kann zum Beispiel ein Rechner auf Pings nicht antworten und trotzdem einen Dienst anbieten. Oder die Pings verenden an einer Firewall oder aber der Rechner auf dem das Programm laeuft, ist gar nicht in der Lage, zu pingen. Das bedeutet, es ist sicherer und besser, einfach eine Testweise Socketverbindung zu der betreffenden Zieladresse aufzubauen und eine evtl. auftretende Exception als Zeichen fuer dessen Abwesenheit im Netz zu deuten.

Folgendes Beispiel soll dies zeigen:

import java.io.*;
import java.net.*;
..

 static Socket nntpsock; // Der Socket fuer die Newsverbindung
 static BufferedReader in;
 static OutputStreamWriter out;

...

try {
    nntpsock = new Socket("news.cis.dfn.de", 119); // Verbinden
    nntpsock.setSoTimeout(300); // Timeout auf 300ms
    in = new BufferedReader(
            new InputStreamReader(nntpsock.getInputStream()));
    out = new OutputStreamWriter(nntpsock.getOutputStream());
} catch (UnknownHostException e) {
    System.err.println("Unknown Host.:" + e.toString());
} catch (IOException e) {
    System.err.println("Rechner nicht erreichbar.  :" + e.toString());
}

...

Autor: Stephan Menzel

Zurück zu "3.4 [NET] Netzwerk"
Hosted by www.Geocities.ws

1