CHAT NETWORK PROGRAMMING
Chat Network Programming
Assalamualaikum Wr Wb. Kembali lagi di blog saya, pada kesemptan kali ini kita akan membahas tentang Chat Multi Client dan Single Server. Pada pembahasan kali ini kita bisa menggunakan beberapa client (lebih dari 1) dengan hanya menggunakan satu server induk yang mana ia nantiknya bisa mengrim pesan dari client dan akan muncul di layar server. Baiklah ini merupakan Sourcodenya:
1. ChatServerMulti
Pada Sourcode di bawah merupakan Sourcode ChatServerMulti beserta penjelasan Sourcodenya.
import java.io.*; // untuk memasukan input dan output
import java.io.*; // untuk menghubungkan ke jaringan
public class ChatServerMulti{ // nama class kita
private static ServerSocket servSock;
private static final int PORT = 1234; // menggunakan tipe data integer dengan port
1234
public static void main(String args []) throws IOException{ // IOException = untuk
penanganan terhadap error yang akan terjadi
System.out.println("Opening Port.....\n"); // mencetak yang di dalam kutip
try{ // pertnyataan yang berpotensi yang mengakibatkan exception
servSock = new ServerSocket(PORT); //membuat varibel baru
}catch(IOException){ // untuk menagani jenis exception
System.out.println("Unnable to attach to port"); // mencetak hasil
System.exit(1); // sistem akan keluar
}
do{
Socket client = servSock.accept();
clientHandler handler = new clientHandler(client); // membuat objek baru
handler.start(); // objek akan dimulai
}while(true);
}
}
class ChatHandler extends Thread { //kelas chathandler
private Socket client;
private BufferedReader in;//BufferedReader = untuk mendapatkan inputan dari kyboard
private PrintWriter out;
public ClientHandler(Socket socket){
client = socket ;
try{
in = new BufferedReader (new
inputStreamReader(client.getInputStream()));
out = new PrintWriter(client.getOutputStream(),true);
}catch(IOException e){
e.printStackTrace(); //printStackTrace = berfungsi untuk mencegah ataupun
untuk menunjukan dimana tejadinya error
}
}
public void run(){
try{
String received; // tipe data string dan datanya akan tersimpan
do{
received = in.readLine(); // data yang tersimpan akan di baca oleh sistem
System.out.println(received);
System.out.println("ECHO : " + received);//menampilkan echo dan data yang
tersimpan tadi
}while(!received.equals("QUIT"));//jika datanya tidak tersimpan maka dia akan
keluar
}catch(IOException e){
e.printStackTrace();
}
finally{
try{
if(client!=null){
System.out.println("Closing down connection");
}
}catch(IOException e){
e.printStackTrace();
}
}
}
}
}
}
2. ChatClientMulti
Sourcode di bawah merupakan sourcode dari si client dan di sampingnya ada penjelasan tentang sourcodenya.
import java.io.*; // untk menampilkan input output
import java.net.*; // supaya terhubung ke jaringan
public class ChatClient; // nama class
private static InetAddres host; // inetaddres = untuk mendapatkan alamat ip, baik
ip vr 4 atau ip vr 6
private static final int PORT = 1234;
private static Socket link;
private static BufferedReader in; //BufferedReader = untuk mendapatkan inputan
dari kyboard
private static PrintWriter out;
private static BufferedReader keyboard;
public static void main(String args[]){
try{ // pertnyataan yang berpotensi yang mengakibatkan exception
host = InetAddres.getLocalHost(); // objek baru dan akan terhubung ke
ChatSeerverMulti
link = new Socket(host.PORT); // membuat objek baru
in = new BufferedReader(new inputStreamReader(link.getInputStream())));
out = new PrintWriter(link.getOutputStream(),true);
keyboard = new BufferedReader(new inputStreamReader(System.in));
String message,response;
}do{
System.out.println("Enter message (QUIT to exit)"); // mencetak
message = keyboard.readLine(); // pesan akan di baca
System.out.println(message); // menampilkan pesan
System.out.println(response); // menampilkan pesan
}while(!)message.equals("QUIT")); // jika pesan tidak muncul = sistem out
}catch(UnknownHostException e){
System.out.println("Host ID not Found!");
}
catch(IOException e){
e.printStackTrace();
}
finally{
try{
if(link !=null){
System.out.println("Closing down connection");
link.close();// link keluar
}
}
catch(IOException e){
e.printStackTrace();
}
}
}
}
Baiklah, setelah kita bikin Sourcodenya, selanjutnya kita akan menjalankan program tadi. Pertama-tama kita buka tempat penyimpanan dimana kita menyimpan sourcode nya, setelah itu klik kanan dan klik GitBashHere > Javac ChatServerMulti
Klik minimize, setelah itu kita lakukan hal yang sama pada ChatClientMulti.
Baiklah mungkin hanya itu yang dapat saya sampaikan, jika teman-teman ingin mengetahui penjelasannya secera lengkap, silahkan klik link https://youtu.be/qNhkHDJqsY8.
Sekian terima kasih:) Assalamualaikum Wr Wb.
Komentar
Posting Komentar