TUGAS 1 PROGJAR CLIENT SERVER

1.       GET IP ADDRESS

Program di bawah ini merupakan program 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 ingin mencoba program di atas, maka copy paste saja program di atas ke dalam notepad kalian. Lalu simpan dengan nama getip.java, setelah disimpan selanjutnya buka command prompt kalian, lalu compile program tersebut dengan cara mengetikkan javac getip.java. setelah program tersebut dicompile maka program tersebut sudah siap untuk dijalankan dengan mengetik java getip pada command prompt kalian. Setelah itu tampil output seperti gambar di bawah ini :



Saya akan menjelaskan sedikit tentang program java untuk menampilkan ip address. 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.javaInetAddress 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 yaituInetAddress.getLocalHost()byte ip[] = host.getAddress(); syntax ini menyatakan bahwa kita membuat sebuah variable yg bertipe data array byte yang bernama ip yang dimana isinya diambil 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.       GET HOST NAME

Program di bawah ini merupakan program 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 menjalankan program getname tersebut.


Penjelasan program dan cara menjalankannya sama seperti pada program sebelumnya ( getip ). 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.                NS LOOK UP


import java.net.*;
public class NsLookup {
public static void main(String args[]) {
if (args.length == 0) {
System.out.println("Pemakaian: java NsLookup <hostname>");
System.exit(0);
}
String host = args[0];
InetAddress address = null;
try {
address = InetAddress.getByName(host);
} catch(UnknownHostException e) {
System.out.println("Unknown host");
System.exit(0);
}
byte[] ip = address.getAddress();
for (int i=0; i<ip.length; i++) {
if (i > 0) System.out.print(".");
System.out.print((ip[i]) & 0xff);
}
System.out.println();
}
}


Logika Program
Listing program di atas akan menampilkan NsLookup yaitu menampilkan host name dan ip address yang ada pada laptop saya.

Output :


4.            IP TO NAME


import java.net.*;
public class IPtoName {
public static void main(String args[]) {
if (args.length == 0) {
System.out.println("Pemakaian: java IPtoName <IP address>");
System.exit(0);
}
String host = args[0];
InetAddress address = null;
try {
address = InetAddress.getByName(host);
} catch (UnknownHostException e) {
System.out.println("invalid IP - malformed IP");
System.exit(0);
}
System.out.println(address.getHostName());
}
}


Logika Program

Listing program diatas digunakan untuk IP lokal dengan IP komputer yang lain dimana penjelasannya adalah berikut ini. Program akan menginport java.net dan masuk pada nama class yang dibuat yaitu IPtoName. 

Output :


5.       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("tanda_seru") == 0) {
os.writeBytes("Asek, password benar");
} 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 jalankan program simpleServer terlebih dahulu, setelah program simpleServer running maka running program simpleClient dengan cara java simpleClient <nama komputer server>.

Server




Client





Server




Client






Server







Client













1 komentar:



Dokumen HML mengatakan...

mantap program javanya bang

Posting Komentar