Senin, 05 November 2012

Aplikasi Chatting menggunakan java di Windows 7 dengan TCP

Tugas 1 Pemrograman Jaringan
Aplikasi Chatting menggunakan java di Windows 7 dengan TCP/IP
Wahyuni Eka Sari (121052096)
Wandy Damarullah (121052097)
Richard Lung Ping Lak (121052112)
Yunis Aprilianti (121052120)
A. Alat dan Bahan
1.       Sistem Operasi Windows 7
2.       Connector MySQL-ODBC 5.2
3.       MySQL Connector Java-5.0.5
4.       Jdk 1.7.0_07
5.       Database Mysql
6.       Notepad
     B.      Persiapan Database
1.       Buat Database dengan nama db_cafe di PHPMYADMIN
2.       Buat sebuah tabel didalam database dengan nama "chat"
                         
3.     Buat koneksi antara java dengan database db_cafe
C. Penjelasan Program
Pada program ini terdapat 4 file java yaitu, ChatServer.java, ChatServerThread.java, ChatClient.java dan ChatClientThread.java.
1.      Program menggunakan protokol TCP. Karena program menggunakan :
streamIn = new DataInputStream(new BufferedInputStream(socket.getInputStream()));
streamOut = new DataOutputStream(new BufferedOutputStream(socket.getOutputStream()));
2.      Penentuan port dengan cara menginputkan port itu pada saat ingin menjalankan program
server = new ServerSocket(port);
3.      Setelah program server dijalankan server akan menunggu client yang akan terkoneksi.
addThread(server.accept());
4. Program server sendiri memiliki class ChatServer.java dan ChatServerThread.java, ChatClientThread.java sendiri berfungsi untuk menyimpan data chatting ke database.
5.      Saat client ingin koneksi ke server, client harus menginputkan ip address dan port yang server gunakan.
6.      Program client sendiri memiliki class ChatClient.java dan ChatClientThread.java.
7.  Program thread pada server dan client sendiri dibuat untuk memungkinkan beberapa client terkoneksi keserver dan untuk memasukkan data chatting yang di perlukan ke database, seperti data time, obrolan, dan id dari client sendiri. Pada program ini id client di lihat dari port local yang digunakan oleh client itu sendiri.
8.      Pada program ChatClient.java, terlebih dahulu dideklarasikan
   private Socket socket              = null;
   private Thread thread              = null;
   private DataInputStream  console   = null;
   private DataOutputStream streamOut = null;
   private ChatClientThread client    = null;
9.      Untuk mendapatkan socket yang digunakan dan menampilkannya digunakan
     server = _server;
       socket = _socket;
       ID     = socket.getPort();
10.  Pada program ChatServerThread.java terdapat  stream data untuk keluar masuk data
streamIn = new DataInputStream(new BufferedInputStream(socket.getInputStream()));
streamOut = new DataOutputStream(new BufferedOutputStream(socket.getOutputStream()));
11.  membuat objek baru untuk mendapatkan data tanggal
Date now = new Date();
DateFormat df = DateFormat.getDateInstance();
String s = df.format(now);
12.  membuat objek untuk waktu HH:mm:ss
sdf = new SimpleDateFormat("HH:mm:ss"); 
String time = sdf.format(new Date());
13.  koneksi java ke database MySQL 
        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
        Connection kon = DriverManager.getConnection("jdbc:odbc:kafeDsn","","");
14.  input id_pengirim,waktu, isi pesan, tanggal ke tabel chat
String sql ="insert into chat values ('"+ID+"','"+time+"','"+terima+"','"+s+"')";
Statement stm = kon.createStatement();
int masuk = stm.executeUpdate(sql);
Gambar 1.server
Gambar diatas merupakan gambar dari program ChatServer.java, dimana saat pertama kali dijalankan server menungggu client masuk pada port 9999. Setelah ada client terhubung server akan menampilkan ip dan id yang digunakan oleh client serta menampilkan pesan yang ditulis oleh client.

Gambar 2. Client 1

Gambar 3. Client 2

Gambar 4. Client 3

Gambar 4. Client 3
Gambar diatas merupakan gambar bagaimana client akan terkoneksi ke server dengan menginputkan ip serta  port yang digunakan oleh server. Setelah terkoneksiakan ditampilkan ip, port koneksi ke server dan id client itu sendiri. Kemudian akan menampilkan pesan yang dikirim oleh client ke server. Pada program ini terdapat beberapa client yang dapat terkoneksi ke server.

download source :
ChatServer
ChatServerThread
ChatClient
ChatClientThread

1 komentar:

Jack Zain mengatakan...

udah presentasi tanggal 7-11-2012 di lab jarinet