Disini saya akan memberikan tutorial pembuatan aplikasi chatting server untuk memenuhi tugas UAS Semester V Komunikasi data. Berikut ini langkah - langkah pembuatan program:
1. Buat Package beri nama "program"
2. Class pertama beri nama "server.java"
Source Code:
package program;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.net.ServerSocket;
import java.net.Socket;
public class server {
public static void main(String [] args) throws IOException{
ServerSocket sk = new ServerSocket(8888);
Socket ss = sk.accept();
BufferedReader in = new BufferedReader(new InputStreamReader(ss.getInputStream()));
PrintStream out = new PrintStream(ss.getOutputStream());
BufferedReader cin = new BufferedReader(new InputStreamReader(System.in));
String inputan;
while (true) {
inputan = in.readLine();
if (inputan.equalsIgnoreCase("END")){
out.println("BYE");
break;
}
System.out.print("Client : " +inputan+"\n");
System.out.print("Server : ");
inputan = cin.readLine();
out.println(inputan);
}
sk.close();
ss.close();
in.close();
out.close();
cin.close();
}
}
3. Kemudian class kedua beri nama "client.java"
Source Code:
package program;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.net.Socket;
import java.util.Scanner;
public class client {
public static void main(String args[]) throws Exception
{
try {
Scanner sc = new Scanner(System.in);
System.out.print("Masukkan IP Address : ");
String ip = sc.nextLine();
System.out.print("Masukkkan Socket Server : ");
int socket = sc.nextInt();
Socket sk=new Socket(ip, socket);
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();
} catch (Exception e) {
System.out.println("Unable to connect to server \nMay be your ip or socket is not correct");
}
}
}
4. Kemudian jalankan kedua class masing - masing di laptop yang berbeda. Misal laptop A menjalankan class server.java
5. Jalankan class client di laptop B, masukkan ip address pada laptop A (karena laptop A menjadi server). Kemudian masukkan socket server yang sudah saya masukkan di list program yaitu 8888. Terakhir coba chat denggan laptop A
Tampilan pada laptop B
Selesai !!!
TICKET UAS
· @send = send(soket.pesan.1024,0); inisialisasi bahwa pesan dikirim menggunakan port 1234 misal dengan pesan >> variabel pesan yang berisi pesan yang akan di kirim.
· sockeaddr_in addr; fungsi ini untuk membaca ip addres yang digunakan
· addr.sin_family = AF_INET; fungsi tersebut digunakan untuk mendeklarasi tipe network protocol yang di gunakan yaitu versi IP 4
· addr.sin_port=htons(nNoPort); fungsi ini digunakan untuk mendeklarasi port yang digunakan misal port 1234
· addr.sin_addr.s_addr = inet.addr(pszAddress); fungsi ini digunakan untuk mendeklarasi ip addres yang digunakan misal 192.168.1.1
· soket= soket(AF_inet,sock_stream,ipproto_tcp); fungsi ini berfungsi sebagai >> soket menggunakan protocol ip versi 4, dengan metode stream, menggunakan protocol tcp
· connect(socket(sockaddr *)&addr,(siszeof(addr))); memaggil fungsi konek dengan soket 1234 dan ip 192.168.1.1
· accept(soket,null,null); fungsi untuk menerima socket
· aRev=recv(sAcc).pesan.1024.0) fungsi untuk menerima pesan yang masuk melalui socket contoh >> 1234 dan ip 192.168.1.1 dengan ukuran pesan 1 byte
· bind(soket.(socketaddr*)&addr.sizeof(addr)); fungsi bind dengan maksud mendengar kiriman pesan dari pengirim dengan soket 1234 dan ip 192.168.1.1
· listen(socket,SOMAXCONN); fungsi listen menampilkan pesan dari soket