SlideShare a Scribd company logo
Aplikasi client dan server dengan
menggunakan bahasa
Pemrograman Java
Oleh :
TRI LESTARI
(061130701310)
6CD
JURUSAN TEKNIK KOMPUTER
POLITEKNIK NEGERI SRIWIJAYA
PALEMBANG
2014
APLIKASI CLIENT DAN SERVER DENGAN
MENGGUNAKAN BAHASA PEMROGRAMAN JAVA
A. Listing Program Server
Berikut adalah listing program aplikasi chatting kelas server:
import java.io.*;
import java.net.*;
import java.util.Scanner;
public class server {
private static ServerSocket serverSocket;
private static final int PORT = 1111;
public static void main(String[] args) throws IOException {
try {
serverSocket = new ServerSocket(PORT);
System.out.println("Server berjalan, menunggu client...");
} catch (IOException ioEx) {
System.out.println("nTidak dapat mensetup port!");
System.exit(1);
}
do {
//Menunggu koneksi dari client...
Socket client = serverSocket.accept();
System.out.println("nClient baru diterima.n");
//Buat thread untuk menangani komunikasi dengan client ini
//lewatkan socket yang relevan ke contructor dari thread ini
ClientHandler handler = new ClientHandler(client);
handler.start(); //menjalankan thread yang telah dibuat
} while (true);
}
}
class ClientHandler extends Thread {
private Socket client;
private Scanner input;
private PrintWriter output;
private Scanner userEntry;
public ClientHandler(Socket socket) {
//Set up referensi ke socket yang berasosiasi...
client = socket;
try {
input = new Scanner(client.getInputStream());
output = new PrintWriter(client.getOutputStream(), true);
userEntry = new Scanner(System.in);
} catch (IOException ioEx) {
//ioEx.printStackTrace();
}
}
public void run() {
String received;
String message;
do {
//Terima pesan dari client pada input stream socket...
received = input.nextLine();
System.out.println(received);
System.out.print("");
System.out.print("server: ");
message = userEntry.nextLine();
//Kirim pesan (message)ke client pada output stream socket...
//Terima respon dari client pada stream input socket...
output.println(message);
//Ulangi sampai client mengirimkan pesan 'KELUAR'...
} while (!received.equals("KELUAR"));
try {
if (client != null) {
System.out.println("Menutup koneksi...");
client.close();
}
} catch (IOException ioEx) {
System.out.println("Penutupan koneksi gagal!");
}
}
}
B. Listing Program Client
Berikut adalah listing program aplikasi chatting kelas client:
import java.io.*;
import java.net.*;
import java.util.Scanner;
public class Client {
private static InetAddress host;
private static final int PORT = 1111;
public static void main(String[] args) {
try {
host = InetAddress.getLocalHost();
} catch (UnknownHostException uhEx) {
System.out.println("nHost ID tidak ditemukan!n");
System.exit(1);
}
sendMessages();
}
private static void sendMessages() {
Socket socket = null;
try {
socket = new Socket(host, PORT);
Scanner networkInput = new Scanner(socket.getInputStream());
PrintWriter networkOutput = new PrintWriter(socket.getOutputStream(),
true);
//Set up stream untuk masukan dari keyboard...
Scanner userEntry = new Scanner(System.in);
String message, response;
do {
System.out.print("klien 1: ");
message = userEntry.nextLine();
//Kirim pesan (message)ke server pada output stream socket...
//Terima respon dari server pada stream input socket...
networkOutput.println(message);
response = networkInput.nextLine();
//Tampilkan respon dari server...
System.out.println("nSERVER> " + response);
} while (!message.equals("KELUAR"));
} catch (IOException ioEx) {
//ioEx.printStackTrace();
} finally {
try {
System.out.println("nMenutup koneksi...");
socket.close();
} catch (IOException ioEx) {
System.out.println("Gagal menutup koneksi!");
System.exit(1);
}
}
}
}
C. Hasil Program Server
Hasil Program Server Menunggu Client
Hasil Program Ketika Server Menerima Client Baru
Hasil Program dengan input obrolan dari client 1,2 dan 3
D. Program Client
Hasil Running Tampilan Pada Client 1
Hasil Running Tampilan Pada Client 2
Hasil Running Tampilan Pada Client 3
Hasil Running Program pada Client 1 melakukan chatting
Hasil Running Program pada Client 2 melakukan chatting
Hasil Running Program pada Client 3 melakukan chatting
E. Pembahasan Listing Program Server
public class server {
private static ServerSocket serverSocket;
private static final int PORT = 1111;
Kode diatas merupakan perintah agar socket server hanya dapat diakses
oleh sendiri. Port = 1111 merupakan port yang disiapkan pada server diatas.
iniserver merupakan nama kelas program javanya.
public static void main(String[] args) throws IOException {
try {
serverSocket = new ServerSocket(PORT);
System.out.println("Server berjalan, menunggu
client...");
} catch (IOException ioEx) {
System.out.println("nTidak dapat mensetup port!");
System.exit(1);
}
Kode diatas merupakan perintah untuk membuat sebuar socket server
bernama serverSocket. “Server berjalan, menunggu client…” akan muncul ketika
program dijalankan. "nTidak dapat mensetup port!" akan muncul ketika program
dijalankan saat masih ada program yang sama yang dijalankan.
do {
Socket client = serverSocket.accept();
System.out.println("nClient baru diterima.n");
ClientHandler handler = new
ClientHandler(client);
handler.start();
} while (true);
Kode diatas merupakan perintah untuk menunggu client terhubung /
connect pada server. Selama masih ada client yang ingin masuk maka server tetap
bisa menerima client tersebut.
class ClientHandler extends Thread {
private Socket client;
private Scanner input;
private PrintWriter output;
private Scanner userEntry;
public ClientHandler(Socket socket) {
client = socket;
try {
input = new Scanner(client.getInputStream());
output = new PrintWriter(client.getOutputStream(), true);
userEntry = new Scanner(System.in);
} catch (IOException ioEx) {
//ioEx.printStackTrace();
Kode diatas merupakan thread untuk mensetup referensi ke socket. Input
merupakan Scanner untuk mendapatkan input. Output merupakan perintah agar
menerima masukan dari keyboard.
public void run() {
String received;
String message;
do {
received = input.nextLine();
System.out.println(received);
System.out.print("");
System.out.print("server: ");
message = userEntry.nextLine();
output.println(message);
} while (!received.equals("QUIT"));
Kode diatas berfungsi untuk menerima dan mengirimkan pesan pada input stream
socket. Program diatas akan terus berjalan selama client tidak mengirimkan pesan
QUIT.
try {
if (client != null) {
System.out.println("Menutup koneksi...");
client.close();
}
} catch (IOException ioEx) {
System.out.println("Penutupan koneksi gagal!");
Kode diatas berfungsi untuk mengakhiri program.
F. Pembahasan Listing Program Client
public class Client {
private static InetAddress host;
private static final int PORT = 1111;
public static void main(String[] args) {
try {
host = InetAddress.getLocalHost();
} catch (UnknownHostException uhEx) {
System.out.println("nHost ID tidak ditemukan!n");
System.exit(1);
}
sendMessages();
}
Kode diatas merupakan perintah agar socket server hanya dapat diakses
oleh sendiri. Port = 1111 merupakan port yang disiapkan pada server diatas.
client merupakan nama kelas program javanya.
private static void sendMessages() {
Socket socket = null;
try {
socket = new Socket(host, PORT);
Scanner networkInput = new Scanner(socket.getInputStream());
PrintWriter networkOutput = new
PrintWriter(socket.getOutputStream(),
true);
Scanner userEntry = new Scanner(System.in);
String message, response;
do {
System.out.print("klien 1: ");
message = userEntry.nextLine();
networkOutput.println(message);
response = networkInput.nextLine();
System.out.println("nSERVER> " + response);
} while (!message.equals("QUIT"));
Kode diatas merupakan perintah untuk mensetup stream untuk masukan
dari keyboard, yang kemudian di scan oleh scanner UserEntry dan di simpan
dalam string message. Setelah itu program akan mengirimkan pesan ke server dan
menunggu server merespon pesan tersebut. Kode akan berjalan selama message
tidak menampilkan QUIT.
try {
System.out.println("nMenutup koneksi...");
socket.close();
} catch (IOException ioEx) {
System.out.println("Gagal menutup koneksi!");
System.exit(1);
Kode diatas merupakan perintah untuk mengakhiri program ketika user
akan keluar.

More Related Content

DOCX
Laporan program chatting1
DOCX
Laporan program chatting
PDF
Program chatting
PDF
How to hack #IDSECCONF2014 ctf online challenge - nganggur
DOCX
Mpi comm accept
DOCX
Latihan java depandi
PDF
Write up idsecconf2015 online ctf
PDF
Tugas C++ - Dian Aditya - 2009/2010
Laporan program chatting1
Laporan program chatting
Program chatting
How to hack #IDSECCONF2014 ctf online challenge - nganggur
Mpi comm accept
Latihan java depandi
Write up idsecconf2015 online ctf
Tugas C++ - Dian Aditya - 2009/2010

Viewers also liked (16)

PPTX
Basis data klien server
PPTX
Tugas 2 ihsan riadi - 1412511162
DOCX
Tugas pemrograman jaringan
PPT
Tugas 8 Rekayasa Web 0316
PPTX
Peer to peer network (p2p)
PDF
Tipe tipe dan model client server-plus
PPT
Tugas 9 Rekayasa Web 0316
PPTX
Taklimatbtpgpb
PPTX
Taklimat ke ipta 2014
PPT
Pemrograman Jaringan
PPTX
Tugas2 krisna muktiandika-1511510347
PPTX
Tugas3 krisna muktiandika-1511510347
PPT
DHCP Server & Client Presentation
PPT
Socket Programming Tutorial
PPT
Client Server Architecture1
PDF
04. prak.-pemrograman-client-server
Basis data klien server
Tugas 2 ihsan riadi - 1412511162
Tugas pemrograman jaringan
Tugas 8 Rekayasa Web 0316
Peer to peer network (p2p)
Tipe tipe dan model client server-plus
Tugas 9 Rekayasa Web 0316
Taklimatbtpgpb
Taklimat ke ipta 2014
Pemrograman Jaringan
Tugas2 krisna muktiandika-1511510347
Tugas3 krisna muktiandika-1511510347
DHCP Server & Client Presentation
Socket Programming Tutorial
Client Server Architecture1
04. prak.-pemrograman-client-server
Ad

Similar to Laporan Chatting Server dan Client (19)

PDF
Laporan chatting server dan client
PDF
Membuat Aplikasi Chatting Client Server Dengan Pemrograman Java
PDF
Laporan program chatting client server
PDF
Zainal chatting
PDF
husni-sister2017_05c_pemrograman_socket_java_server_detail.pdf
PDF
Jeni Intro2 Bab10 Jaringan
DOCX
Aplikasi Chatting dengan Client-Server Menggunakan Protokol TCP
DOCX
Socket Programming TCP Echo Client Server (Python)
PDF
Praktikum pemrograman jaringan-1-3
PDF
Part 3 & 4 Networking Programming.pdf
PDF
Chat33237 33308 33529_ok
PDF
Membangun aplikasi-client-server-dengan-java
DOC
Laporan pemrograman visual3
PPT
Materi 2
PPTX
pemrograman socket pada jaringan komputer
PPTX
PPT UTS Pemograman Jaringan- Thomas & Claudio.pptx
DOCX
Membangun aplikasi client server dengan java
DOCX
Modul network programming
DOCX
Socket Programming UDP Echo Client Server (Python)
Laporan chatting server dan client
Membuat Aplikasi Chatting Client Server Dengan Pemrograman Java
Laporan program chatting client server
Zainal chatting
husni-sister2017_05c_pemrograman_socket_java_server_detail.pdf
Jeni Intro2 Bab10 Jaringan
Aplikasi Chatting dengan Client-Server Menggunakan Protokol TCP
Socket Programming TCP Echo Client Server (Python)
Praktikum pemrograman jaringan-1-3
Part 3 & 4 Networking Programming.pdf
Chat33237 33308 33529_ok
Membangun aplikasi-client-server-dengan-java
Laporan pemrograman visual3
Materi 2
pemrograman socket pada jaringan komputer
PPT UTS Pemograman Jaringan- Thomas & Claudio.pptx
Membangun aplikasi client server dengan java
Modul network programming
Socket Programming UDP Echo Client Server (Python)
Ad

More from trilestari08 (10)

PDF
Laporan program browser
PDF
Laporan multiclient chatting client server
PDF
Laporan info server dan info client
PDF
Laporan get nama
PDF
Laporan get ip
PDF
Laporan Info Server dan Info Client
PDF
Laporan ambil nama
PDF
Laporan Ambil IP
PDF
Laporan Server dan Client
DOCX
Laporan server dan client
Laporan program browser
Laporan multiclient chatting client server
Laporan info server dan info client
Laporan get nama
Laporan get ip
Laporan Info Server dan Info Client
Laporan ambil nama
Laporan Ambil IP
Laporan Server dan Client
Laporan server dan client

Laporan Chatting Server dan Client

  • 1. Aplikasi client dan server dengan menggunakan bahasa Pemrograman Java Oleh : TRI LESTARI (061130701310) 6CD JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG 2014
  • 2. APLIKASI CLIENT DAN SERVER DENGAN MENGGUNAKAN BAHASA PEMROGRAMAN JAVA A. Listing Program Server Berikut adalah listing program aplikasi chatting kelas server: import java.io.*; import java.net.*; import java.util.Scanner; public class server { private static ServerSocket serverSocket; private static final int PORT = 1111; public static void main(String[] args) throws IOException { try { serverSocket = new ServerSocket(PORT); System.out.println("Server berjalan, menunggu client..."); } catch (IOException ioEx) { System.out.println("nTidak dapat mensetup port!"); System.exit(1); } do { //Menunggu koneksi dari client... Socket client = serverSocket.accept(); System.out.println("nClient baru diterima.n"); //Buat thread untuk menangani komunikasi dengan client ini //lewatkan socket yang relevan ke contructor dari thread ini ClientHandler handler = new ClientHandler(client); handler.start(); //menjalankan thread yang telah dibuat } while (true); } } class ClientHandler extends Thread { private Socket client; private Scanner input; private PrintWriter output; private Scanner userEntry;
  • 3. public ClientHandler(Socket socket) { //Set up referensi ke socket yang berasosiasi... client = socket; try { input = new Scanner(client.getInputStream()); output = new PrintWriter(client.getOutputStream(), true); userEntry = new Scanner(System.in); } catch (IOException ioEx) { //ioEx.printStackTrace(); } } public void run() { String received; String message; do { //Terima pesan dari client pada input stream socket... received = input.nextLine(); System.out.println(received); System.out.print(""); System.out.print("server: "); message = userEntry.nextLine(); //Kirim pesan (message)ke client pada output stream socket... //Terima respon dari client pada stream input socket... output.println(message); //Ulangi sampai client mengirimkan pesan 'KELUAR'... } while (!received.equals("KELUAR")); try { if (client != null) { System.out.println("Menutup koneksi..."); client.close(); } } catch (IOException ioEx) { System.out.println("Penutupan koneksi gagal!"); } } }
  • 4. B. Listing Program Client Berikut adalah listing program aplikasi chatting kelas client: import java.io.*; import java.net.*; import java.util.Scanner; public class Client { private static InetAddress host; private static final int PORT = 1111; public static void main(String[] args) { try { host = InetAddress.getLocalHost(); } catch (UnknownHostException uhEx) { System.out.println("nHost ID tidak ditemukan!n"); System.exit(1); } sendMessages(); } private static void sendMessages() { Socket socket = null; try { socket = new Socket(host, PORT); Scanner networkInput = new Scanner(socket.getInputStream()); PrintWriter networkOutput = new PrintWriter(socket.getOutputStream(), true); //Set up stream untuk masukan dari keyboard... Scanner userEntry = new Scanner(System.in); String message, response; do { System.out.print("klien 1: "); message = userEntry.nextLine(); //Kirim pesan (message)ke server pada output stream socket... //Terima respon dari server pada stream input socket... networkOutput.println(message); response = networkInput.nextLine(); //Tampilkan respon dari server...
  • 5. System.out.println("nSERVER> " + response); } while (!message.equals("KELUAR")); } catch (IOException ioEx) { //ioEx.printStackTrace(); } finally { try { System.out.println("nMenutup koneksi..."); socket.close(); } catch (IOException ioEx) { System.out.println("Gagal menutup koneksi!"); System.exit(1); } } } } C. Hasil Program Server Hasil Program Server Menunggu Client
  • 6. Hasil Program Ketika Server Menerima Client Baru Hasil Program dengan input obrolan dari client 1,2 dan 3
  • 7. D. Program Client Hasil Running Tampilan Pada Client 1 Hasil Running Tampilan Pada Client 2 Hasil Running Tampilan Pada Client 3
  • 8. Hasil Running Program pada Client 1 melakukan chatting Hasil Running Program pada Client 2 melakukan chatting Hasil Running Program pada Client 3 melakukan chatting
  • 9. E. Pembahasan Listing Program Server public class server { private static ServerSocket serverSocket; private static final int PORT = 1111; Kode diatas merupakan perintah agar socket server hanya dapat diakses oleh sendiri. Port = 1111 merupakan port yang disiapkan pada server diatas. iniserver merupakan nama kelas program javanya. public static void main(String[] args) throws IOException { try { serverSocket = new ServerSocket(PORT); System.out.println("Server berjalan, menunggu client..."); } catch (IOException ioEx) { System.out.println("nTidak dapat mensetup port!"); System.exit(1); } Kode diatas merupakan perintah untuk membuat sebuar socket server bernama serverSocket. “Server berjalan, menunggu client…” akan muncul ketika program dijalankan. "nTidak dapat mensetup port!" akan muncul ketika program dijalankan saat masih ada program yang sama yang dijalankan. do { Socket client = serverSocket.accept(); System.out.println("nClient baru diterima.n"); ClientHandler handler = new ClientHandler(client); handler.start(); } while (true); Kode diatas merupakan perintah untuk menunggu client terhubung / connect pada server. Selama masih ada client yang ingin masuk maka server tetap bisa menerima client tersebut. class ClientHandler extends Thread { private Socket client; private Scanner input; private PrintWriter output; private Scanner userEntry;
  • 10. public ClientHandler(Socket socket) { client = socket; try { input = new Scanner(client.getInputStream()); output = new PrintWriter(client.getOutputStream(), true); userEntry = new Scanner(System.in); } catch (IOException ioEx) { //ioEx.printStackTrace(); Kode diatas merupakan thread untuk mensetup referensi ke socket. Input merupakan Scanner untuk mendapatkan input. Output merupakan perintah agar menerima masukan dari keyboard. public void run() { String received; String message; do { received = input.nextLine(); System.out.println(received); System.out.print(""); System.out.print("server: "); message = userEntry.nextLine(); output.println(message); } while (!received.equals("QUIT")); Kode diatas berfungsi untuk menerima dan mengirimkan pesan pada input stream socket. Program diatas akan terus berjalan selama client tidak mengirimkan pesan QUIT. try { if (client != null) { System.out.println("Menutup koneksi..."); client.close(); } } catch (IOException ioEx) { System.out.println("Penutupan koneksi gagal!"); Kode diatas berfungsi untuk mengakhiri program. F. Pembahasan Listing Program Client
  • 11. public class Client { private static InetAddress host; private static final int PORT = 1111; public static void main(String[] args) { try { host = InetAddress.getLocalHost(); } catch (UnknownHostException uhEx) { System.out.println("nHost ID tidak ditemukan!n"); System.exit(1); } sendMessages(); } Kode diatas merupakan perintah agar socket server hanya dapat diakses oleh sendiri. Port = 1111 merupakan port yang disiapkan pada server diatas. client merupakan nama kelas program javanya. private static void sendMessages() { Socket socket = null; try { socket = new Socket(host, PORT); Scanner networkInput = new Scanner(socket.getInputStream()); PrintWriter networkOutput = new PrintWriter(socket.getOutputStream(), true); Scanner userEntry = new Scanner(System.in); String message, response; do { System.out.print("klien 1: "); message = userEntry.nextLine(); networkOutput.println(message); response = networkInput.nextLine(); System.out.println("nSERVER> " + response); } while (!message.equals("QUIT")); Kode diatas merupakan perintah untuk mensetup stream untuk masukan dari keyboard, yang kemudian di scan oleh scanner UserEntry dan di simpan dalam string message. Setelah itu program akan mengirimkan pesan ke server dan menunggu server merespon pesan tersebut. Kode akan berjalan selama message tidak menampilkan QUIT. try { System.out.println("nMenutup koneksi..."); socket.close(); } catch (IOException ioEx) {
  • 12. System.out.println("Gagal menutup koneksi!"); System.exit(1); Kode diatas merupakan perintah untuk mengakhiri program ketika user akan keluar.