Sabtu, 29 April 2017

Pemrograman Jaringan : 5. Membangun Aplikasi Client-Server TCP Sederhana





5. Membangun Aplikasi Client-Server TCP Sederhana


Source Code


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

            }

    }
}


Output
 
Logika Program
Program di atas adalah simpleServer.java yang bertindak sebagai server. Server bertugas untuk menerima dan memproses request dari client. Saat program ini dijalankan, maka server akan aktif dengan mencetak "Aplikasi server hidup...". Saat server aktif, server menunggu masukan dari client berupa kata kunci yaitu "salam". Jika client menuliskan kata selain "salam", maka server akan merespon "Maaf, saya tidak mengerti". 



Source Code :


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

        }

    }

}


Output

 
Logika Program

Program ini berperan sebagai client. Client memasukkan kata kunci "nama  dan diteruskan ke server. Jika kata kunci cocok, maka server akan merespon "menjawab nama".




 

Pemrograman Jaringan : 5. Membangun Aplikasi Client-Server TCP Sederhana

5. Membangun Aplikasi Client-Server TCP Sederhana Source Code import java.io.*; import java.net.*; publi...