Minggu, 09 Juni 2013

5. Pemograman Sistem client Server

Sistem Client Server


Pemograman Sistem client Server dengan menggunakan bahasa pemograman java.
cara membuat program client server adalah sebagai berikut :

  1. Gunakan lebih dari 1 komputer gunanya untuk membuat server dan client .
  2. Buka aplikasi netbeans pada masing-masing komputer dan beri nama projek komputer 1  beri nama SERVER dan projek 2 beri nama CLIENT.
  3. Masukan coding server ke komputer SERVER dan coding client ke Komputer CLIENT, contoh coding server dan client ada di bawah ini.
  4. Dalam coding client ganti coding localhost dengan ip komputer Server.contoh coding client "  Socket s=new Socket("10.0.0.4", 5111);"  dengan mengubah jadi "  Socket s=new Socket("192.168.0.1", 5111);" tergantung ip yang kita setting di komputer sever.
  5. Setelah coding client dan server success di running maka isi dalam  komputer client seperti berikut ini:

Ini client maka akan muncul di komputer CLIENT 



    dan di komputer SERVER




Coding dari Server
**********************************************************************
package tugas_server;

import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.logging.Level;
import java.util.logging.Logger;

public class Tugas_server {

    public static void main(String[] args) {
        try {
            ServerSocket ss = new ServerSocket(5111);
            Socket s;
            String balasan;
            String balasan2;
            ObjectInputStream in = null;
            ObjectOutputStream out = null;
            s = ss.accept();
            out = new ObjectOutputStream(s.getOutputStream());
            out.flush();
            in = new ObjectInputStream(s.getInputStream());
            balasan = "";
            balasan2 = "";
            while (true) {
                balasan = "";
                balasan2 = "";
                balasan = ReadMessage(in);
                if (balasan.equals("exit")) break;
                else {
                    if(balasan.equals("ini client"))
                    {
                    SendMessage("ini server, masukan username", out);
                    balasan2 = ReadMessage(in);
                    if (balasan2.equals("admin")){ SendMessage("Selamat Datang Admin", out);}
                    else {
                        if (balasan2.equals("user")){SendMessage("Selamat Datang User", out);}
                        else SendMessage("username tidak diketahui", out);
                        }
                    }
                    else
                    {
                        SendMessage("perintah tidak diketahui", out);
                }
            }
            }
    in.close();
    out.close();
    s.close();
    ss.close();
}catch (IOException ex){
    Logger.getLogger(Tugas_server.class.getName()).log(Level.SEVERE,null,ex);
    }
    }
 public static String ReadMessage(ObjectInputStream in)
 {
 String Reader="";
 try {
     Reader=(String)in.readObject();
 }catch (IOException ex){
     Logger.getLogger(Tugas_server.class.getName()).log(Level.SEVERE,null,ex);
 }catch (ClassNotFoundException ex){
     Logger.getLogger(Tugas_server.class.getName()).log(Level.SEVERE,null,ex);
 }
 System.out.println(Reader);
 return Reader;
 }
 public static void SendMessage(String word, ObjectOutputStream out)
 {
     try{
         out.writeObject(word);
         out.flush();
     }catch (IOException ex){
         Logger.getLogger(Tugas_server.class.getName()).log(Level.SEVERE,null,ex);
     }
    }

}


***********************************************************************


Coding Client.

package tgs_client;
import java.util.Scanner;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.net.Socket;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author UNLA
 */
public class Tgs_Client {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) throws IOException{
        Socket s=new Socket("10.0.0.4", 5111);
        ObjectInputStream in=null;
        ObjectOutputStream out=null;
        Scanner scanf=new Scanner(System.in);
        String input="";
        String balasan;
        String balasan2;
        out=new ObjectOutputStream(s.getOutputStream());
        out.flush();
        in=new ObjectInputStream(s.getInputStream());
        balasan = "";
        balasan2="";
        while(true)
        {
            balasan="";
            balasan2="";
            input=scanf.nextLine();
            SendMessage(input, out);
            if(input.equals("exit"))break;
            else
            {
                balasan=ReadMessage(in);
                if(balasan.equals("ini server, masukkan username"))
                {
                    input=scanf.nextLine();
                    SendMessage(input, out);
                    balasan2=ReadMessage(in);

                }
            }
        }
        in.close();
        out.close();
        s.close();

        // TODO code application logic here
    }
public static void SendMessage(String word, ObjectOutputStream out)
{
    try{
        out.writeObject(word);
        out.flush();
    } catch (IOException ex){
        Logger.getLogger(Tgs_Client.class.getName()).log(Level.SEVERE, null, ex);
    }
}
public static String ReadMessage(ObjectInputStream in)
{
    String reader="";
    try{
        reader=(String) in.readObject();
    } catch (IOException ex){
        Logger.getLogger(Tgs_Client.class.getName()).log(Level.SEVERE, null, ex);
    } catch (ClassNotFoundException ex){
        Logger.getLogger(Tgs_Client.class.getName()).log(Level.SEVERE, null, ex);
    }
    System.out.println(reader);
    return reader;
}
}

Tidak ada komentar:

Posting Komentar