Selasa, 01 Mei 2012

Membangun Client-Server sederhana menggunakan Java

Mungkin kita beranggapan client-server sangat rumit. Untuk itu penulis akan membahas tentang client-server menggunakan bahasa pemrograman Java. Ini dilakukan menggunakan local komputer yang sama.

langkah awal yaitu ketik program untuk server di bawah ini:

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();
        }
    }

}

simpan dengan nama SimpleServer.java

langkah ke dua yaitu ketik program untuk clientdi bawah ini:
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("Error io: " + e2);
        }
       
        //Menulis ke server
        try {
            System.out.println("Dari server: " + output);
            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);   
        }
    }
}

simpan dengan nama :  SimpleClient.java

Langkah ke tiga:  compile dan running SimpleServer.java



gambar 1 server hidup
 Langkah ke empat compile SimpleClient.java . untuk running ketik 
java  [nama file] [nama local computer]
java SimpleClient siman-pc setelah itu ketik "salam" dan perhatikan apa respon terjadi pada cmd server

respon dari server bila kita mengetikan salam

sekian dari penulis. bila ada pertanyaan tolong di coment ya...



Tidak ada komentar:

Posting Komentar