Pada kesempatan kali ini saya
akan sedikit berbagi tentang macam – macam program java yang dapat digunakan
untuk jaringan. Misalnya program java yang dapat mengetahui IP address atau
nama dari sebuah PC dan lain – lain.
1. IP
address
Kodingan di bawah ini adalah
codingan yang dapat digunakan untuk mengecek IP komputer yang sedang kita
pakai.
import java.net.*;
public class getip {
public static void main(String
args[]) throws Exception {
InetAddress host = null;
host =
InetAddress.getLocalHost();
byte ip[] = host.getAddress();
for (int i=0; i<ip.length;
i++) {
if (i > 0) {
System.out.print(".");}
System.out.print(ip[i] &
0xff);}
System.out.println();
}}
Jika kalian ing mencoba
kodingan di atas, maka copy paste saja kodingan di atas ke dalam notepad
kalian. Lalu simpan dengan nama getip.java, setelah di simpan maka kalian buka command
prompt kalian, lalu compile program tersebut dengan cara mengetikkan javac
getip.java. setelah program tersebut di compile maka program tersebut sudah
siap untuk dijalankan dengan mengetik java getip pada command prompt kalian.
Setelah saya running program tersebut di laptop saya, maka akan keluar output
seperti gambar di bawah ini :
Saya akan menjelaskan sedikit
tentang program java untuk menampilkan ip address tersebut. Pada line pertama
terdapat syntax import java.net.*;, sintax ini digunakan untuk mengimport semua
library yang berada di dalam folder net pada folder java. Library yang diimport
tadi akan digunakan pada program ini untuk menampilkan ip address komputer kita.
Pada line kedua terdapat sintax public class getip {, pada syntax
tersebut menyatakan bahwa kita membuat sebuah class dengan nama getip. Pada line
ketiga terdapat syntax public static void main(String args[])
throws Exception {, syntax tersebut menyatakan hawa class getip adalah
class utama pada program penampilan ip address tersebut sehingga file javanya
diberi nama getip.java.
InetAddress host = null;
host =
InetAddress.getLocalHost();
byte ip[] = host.getAddress();
for (int i=0; i<ip.length;
i++) {
if (i > 0) {
System.out.print(".");}
System.out.print(ip[i] &
0xff);}
System.out.println();
Sisa syntax program getip saya
pisahkan di atas sehingga lebih mudah untuk mengetahui fungsinya. InetAddress
host = null; digunakan untuk mendeklarasikan InetAddress terhadap objek
host yang memiliki nilai awal null. host = InetAddress.getLocalHost(); syntax
ini menyatakan bahwa objek host di beri nilai yaitu InetAddress.getLocalHost() .
byte
ip[] = host.getAddress(); sytax ini menyatakan bahwa kita membuat
sebuah variable yg bertipe data array byte yang bernama ip yang dimana isinya
di ambil dari host.getAddress(), artinya dia memanggil method getAddress pada
objek host yang telah di deklarasikan tadi. Lalu dibuat perulangan untuk
mencetak ip address computer tersebut.
2. Nama komputer
Kodingan di bawah ini adalah
codingan yang dapat digunakan untuk mengecek nama komputer yang sedang kita
pakai.
import java.net.*;
public class getname {
public static void main(String
args[]) throws Exception {
InetAddress host = null;
host =
InetAddress.getLocalHost();
System.out.println("Nama
komputer Anda: " +
host.getHostName());
}}
Berikut adalah hasil ketika
kita merunning program getname tersebut.
Penjelasan program dan cara
merunningnya sama seperti getip pada sebelumnya. Yang membedakan adalah jika
pada program getip menggunakan syntax host.getAddress(); untuk mengetahui
ip computer yang sedang kita pakai, maka pada program getname menggunakan
syntax host.getHostName(); untuk menampilkan nama computer yang kita
pakai.
3. Chatting
sederhana client – server dengan socket programming
simpleServer.java
import java.io.*;
import java.net.*;
public class simpleServer {
public final static int
TESTPORT = 5000;
public static void main(String
args[]) {
ServerSocket checkServer =
null;
String line;
BufferedReader is = null;
DataOutputStream os = null;
Socket clientSocket = null;
try {
checkServer = new
ServerSocket(TESTPORT);
System.out.println("Aplikasi
Server hidup ...");
} catch (IOException e) {
System.out.println(e);
}
try {
clientSocket =
checkServer.accept();
is = new BufferedReader(new
InputStreamReader(clientSocket.getInputStream()));
os = new
DataOutputStream(clientSocket.getOutputStream());
} catch (Exception ei) {
ei.printStackTrace();
}
try {
line = is.readLine();
System.out.println("Terima
: " + line);
if
(line.compareTo("salam") == 0) {
os.writeBytes("salam
juga");
} else {
os.writeBytes("Maaf, saya
tidak mengerti");
}
} catch (IOException e) {
System.out.println(e);
}
try {
os.close();
is.close();
clientSocket.close();
} catch (IOException ic) {
ic.printStackTrace();
}
}
}
simpleClient.java
import java.io.*;
import java.net.*;
public class simpleClient {
public final static int
REMOTE_PORT = 5000;
public static void main(String
args[]) throws Exception {
Socket cl = null;
BufferedReader is = null;
DataOutputStream os = null;
BufferedReader stdin = new
BufferedReader(new
InputStreamReader(System.in));
String userInput = null;
String output = null;
// Membuka koneksi ke server
pada port REMOTE_PORT
try {
cl = new Socket(args[0],
REMOTE_PORT);
is = new BufferedReader(new
InputStreamReader(cl.getInputStream()));
os = new
DataOutputStream(cl.getOutputStream());
} catch(UnknownHostException
e1) {
System.out.println("Unknown
Host: " + e1);
} catch (IOException e2) {
System.out.println("Erorr
io: " + e2);
}
// Menulis ke server
try {
System.out.print("Masukkan
kata kunci: ");
userInput = stdin.readLine();
os.writeBytes(userInput +
"\n");
} catch (IOException ex) {
System.out.println("Error
writing to server..." + ex);
}
// Menerima tanggapan dari
server
try {
output = is.readLine();
System.out.println("Dari
server: " + output);
} catch (IOException e) {
e.printStackTrace();
}
// close input stream, output
stream dan koneksi
try {
is.close();
os.close();
cl.close();
} catch (IOException x) {
System.out.println("Error
writing...." + x);
}
}
}
Untuk program ini kita
membutuhkan 2 komputer untuk menjalankannya. 1 komputer bertindak sebagai
server dan 1 komputer lainnya bertindak sebagai client. Pada sisi server save
file yang bernama simpleServer.java sedangkan pada sisi client save file yang
bernama simpleClient.java. Lalu compile program simpleServer.java di sisi server dan compile simpleClient.java di sisi client. lalu runningkan program simpleServer terlebih dahulu, setelah program simpleServer running maka running program simpleClient dengan cara java simpleClient <nama komputer server>. seperti gambar di bawah ini.
setelah dirunning maka program akan meminta kata kunci jika kata kunci yang dimasukkan sesuai maka server akan membalasnya. jika tidak maka akan keluar tampilan seperti gambar di bawah ini.
dan berikut jika kata kunci client salah.
jika dilihat pada gambar di atas maka bisa disimpulkan jika katakunci client salah maka output di client yang terjadi perubahan tapi output pada server tidak mengalami perubahan. sekian dari saya. semoga tulisan saya ini dapat membantu kalian untuk membuat program yang lebih dari ini. terima kasih.
Tidak ada komentar:
Posting Komentar