PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [Tutorial] Java Ping



DonErnus
23.01.2009, 11:48
Java Tutorial
Thema: Java Ping
Schwierigkeit: Fortgeschrittene

Frage?
Wozu Brauch ich ein Java Programm um einen Ping abzusetzten?

Anreitz:
Ich habe mich mit dem Ping absetzten über Java deswegen Entschieden, da sobald man ein Programm welches mit Rechner oder servern Kommuniziert, dies fast zwingend beim debuggen braucht.

Praktisches beispiel:
Wen man eine auf JDBC bassierten Datenbank zugriff Programmiert, kommt man zwangsläufig nicht an dem Ping vorbei, da ein Ping einem lange fehlersuche erspart.
Ich benutze den bin zuanfang meiner Datenbank programme in dem ich überprüfe ob der Ping "success" ore "not success". So findet man schnell und einfach ohne viel fehler code heraus ob die Datenbank da ist oder der server oder der Rechner.

Wir legen los:

Als erstes Erstellen wir ein neues Java Projekt, und eine Neue Class mit dem namen "Ping.java".

Diese Class erstellen wir als Main Class.


public class Ping {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub

}

}

Nun Setzten wir unsere Variable für unseren host, der host kan ein rechner ein Server ore so what sein.
Das wichtige ist dabei das wir den Host als
String Deklarieren. In dem Fall habe ich die Local host adresse von meiner Localen Datenbank gewählt.

public class Ping {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String host ="127.0.0.1";

}

}

Nun Müssen wir um den ping abzuschicken den ProcessBuilder aufrufen.


public static void main(String[] args) {
// TODO Auto-generated method stub


String host = "127.0.0.1";

ProcessBuilder pbl = new ProcessBuilder("ping",""+host+"");


}

Nun zur Erklärung, wir geben dem ProcessBuilde mist was wir machen wollen in dem fall "Ping" und wo wir hinpingen wollen in demfall zu dem String Host.

Als Nächstenschritt müssen wir unseren Process starten.


public class Ping {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String host ="127.0.0.1";
Process pl = pbl.start();
}

}

Nun Bekommen wir seine Fehlermeldung. Da uns etwas wichtiges in der Main Methode fehlt.


public class Ping {

/**
* @param args
*/
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
String host ="127.0.0.1";
Process pl = pbl.start();
}

}

Nun Müssen wir auf den Ping Warten und eine einfache If else anweisung schreiben wo uns dan mitteilt ob der Ping Erfolgreich war doch nicht.


public class Ping {

/**
* @param args
*/
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
String host ="127.0.0.1";

Process pl = pbl.start();
pl.waitFor();
if (pl.exitValue()==0)
System.out.println("Success");
else
System.out.println("no Success");
}

}

Nun Wird Überprüft ob der Ping ankommt oder nicht.
Wir testen das Ganze und was passiert.


Konsole: Success


Dh. Unsere Server kan Erfolgreich angepingt werden.

Das war mein kleines Ping unter Java how To ist eins meiner ersten die ich schreibe ich hoffe es ist hilfreich ;).

Gruß Don

Sturm
23.01.2009, 14:00
haste fein gemacht nur hab ich (ich hoffe ich spreche für die mehrheit) ka von java. ich hatte es mal in der shcule, konnte mich damit aber garnicht anfreunden...
habe derzeit delphi... find ich schon eher interessant :D

DonErnus
25.01.2009, 14:26
:) zu delphin kan ich auch iniges posten :D bin in die richtung multifunktional ;) bin gerade dabei noch ein Großes anfäger tut für java zu schreiben =)

vllt freundet sich dan jeman d daran an :P

Sturm
25.01.2009, 23:47
schreib mir was zu delphi ^^