Jul 282010
 

oke, sekarang saat nya kita mempelajari pemrograman java. kali ini server socket. salah satu fungsinya adalah untuk membuat aplikasi chating. aplikasi chating tersebut masih sangat sederhana. karena tidak dalam bentuk gui melainkan masih dalam bentuk console. prinsipnya, chat bisa berjalan jika server dijalankan terlebih dahulu. bisa dalam 1 komputer, bisa juga dalam komputer yang berbeda. masalah ini, tinggal seting saja pada client. tulis localhost jika chat dalam 1 komputer, atau tulis ip server jika chat dilakukan dengan komputer yang berbeda. karena bersifat sederhana pula, chat hanya bisa dilakukan secara bergantian. tidak bisa server terus yang mengirim pesan, begitu juga untuk client.

anda disarankan untuk memahami konsep-konsep dasar pemrograman sebelum mencoba untuk menjalankan aplikasi ini. kalau belum, pada akhirnya juga akan mengatakan “program apa ini?? ngawur si admin. program ga bisa dijalankan nekat di upload pula”. 🙂 karena saya banyak menerima komentar serupa, berkaitan dengan source code yang saya upload. sedangkan, saya pastikan bahwa semua source code bisa di compile atau dijalankan dengan baik. 🙂

oke, sekali lagi, mohon dipelajari algoritma dan code nya. jadi jangan asal copy-paste. 🙂



chatserver.java

—————————-begin—————————————

import java.net.*;
import java.io.*;

public class chatserver
{
public static void main(String args[]) throws Exception
{
ServerSocket ss=new ServerSocket(2000);
System.out.println(“Menunggu Klien mengirim pesan pertama, klien yang harus pertama kali mengirim pesan…”);
System.out.println(“* chat dilakukan 2 arah, server klien, n bergantian kirim pesan.”);
Socket sk=ss.accept();
System.out.println(“Klien telah masuk. happy chat! untuk berhenti, ketik stop pada klien.\n\n”);
BufferedReader cin=new BufferedReader(new InputStreamReader(sk.getInputStream()));
PrintStream cout=new PrintStream(sk.getOutputStream());
BufferedReader stdin=new BufferedReader(new InputStreamReader(System.in));
String s;
while ( true )
{
s=cin.readLine();
if (s.equalsIgnoreCase(“stop”))
{
cout.println(“Bye”);
break;
}
System. out.print(“Client : “+s+”\n”);
System.out.print(“Server : “);
s=stdin.readLine();
cout.println(s);
}
ss.close();
sk.close();
cin.close();
cout.close();
stdin.close();
}
}

—————————————end———————————–



chatclient.java

——————————-begin———————

import java.net.*;
import java.io.*;

public class chatclient
{
public static void main(String args[]) throws Exception
{
Socket sk=new Socket(“localhost”,2000);
BufferedReader sin=new BufferedReader(new InputStreamReader(sk.getInputStream()));
PrintStream sout=new PrintStream(sk.getOutputStream());
BufferedReader stdin=new BufferedReader(new InputStreamReader(System.in));
String s;
while ( true )
{
System.out.print(“Client : “);
s=stdin.readLine();
sout.println(s);
s=sin.readLine();
System.out.print(“Server : “+s+”\n”);
if ( s.equalsIgnoreCase(“Bye”) )
break;
}
sk.close();
sin.close();
sout.close();
stdin.close();
}
}
————————————–end——————————

jika anda ingin yang lebih mudah, tanpa copy paste, saya sediakan link download untuk 2 source code diatas. namun ingat, palajari! jangan asal copas. berikut link download nya:



download disini

  10 Responses to “chat sederhana berbasis console client server dengan java”

  1. kalau mau masukkin jd multi thread gitu gmn ya caranya? thx b4.

  2. hem… gman neh mksdnya???
    terimakasih atas kunjungan anda…

  3. kalo client lebih dari satu bisa tidak?

    gimana caranya supaya bisa multi client ya?

    thanks

  4. maksudnya bisa ada banyak client dijalankan sekaligus. jd antar client bisa melakukan chatting. kalau yg mas buat kan antara client dan server saja. tq.

  5. oh.. ya.. ya.. saya pribadi belum pernah buat yang seperti itu.. em… saya pernah dapat mungkin seperti yang anda maksud.. kalo tidak salah open source juga dan pake java.. seingat saya, saya dapat di planetsource code coba cari di sana.

    maaf atas keterbatasan ini.


  6. pxzone:

    kalo client lebih dari satu bisa tidak?

    gimana caranya supaya bisa multi client ya?

    thanks

    emh.. ini pertanyaan sama seperti yang ditanyakan si Fny ya?? ya itu jawaban saya…

  7. terima kasih banyak pak . . . . sangat membantu tugas ini, adakah yg sudah ber jenis game online kecil2an gitu

  8. sama2… tapi tidak ada… 😀

  9. supaya bisa chat dg komptr lain gmn pak admin?
    cara penulisan IP nya dmana?

  10. em.. coba cari n pelajari code nya.. pasti ketemu.. hehehe

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(required)

(required)