SlideShare a Scribd company logo
TUGAS PEMROGRAMAN JARINGAN
MEMBUAT APLIKASI SERVER
 Tambahkan perintah untuk mengimpor beberapa pustaka yang diperlukan pada
file Main.Java
Package modul1server;
Import java.net.*;
Import java.io.*;
Import java.util.*;
 Tambahkan program pada fungsi main dalam kelas main
Public static void main(string[] args)
{
ServerSocket echoServer = null;
String line;
DataInputStream is;
PrintStream os;
Socket socketKlien = null;
Try
{
echoServer = new ServerSocket(2222);
}
Catch (IOException e)
{
System.out.println(e);
}
While (true)
{
Try
{
System.out.println(
“Menunggu permintaan koneksi dari klien”);
SocketKlien = echoServer.accpet();
System.out.println(“Permintaan koneksi diterima”);
Is = new DataInputStream(SocketKlien.getInputStream());
Os = new PrintStream(SocketKlien.getOutputStream());
Os.println(“Server: Halo, anda terhubung ke server echo pada” new Date());
While (true)
{
Line = is.readLine();
System.out.println(“Klien: “+line);
Os.println(“Server: “+line);
Os.flush();
If (line.equals(“quit”))
{
Os.println(“Server: koneksi ditutup”);
}
}
socketKlien.close();
}
Catch (IOException e) {
System.out.println(“Terdapat kesalahan pada soket”);
}
Catch (java.lang.NullPointerException e) {
System.out.println(“Klien memutus koneksi”);
}
System.out.println(“Klien memutus koneksi”);
}
System.out.println(“Koneksi ditutup”);
}
}
}
MEMBUAT APLIKASI KLIEN
 Komponen yang digunakan:
Komponen Properti Isi
jFrame Title Klien
jButton Variabel Name jButtonKonek
Text Hubungkan
jLabel Variable Name jLabelKonek
Text Tidak terhubung ke server
jTextField Variable Name jTextFieldPesan
Text (kosongkan)
jButton Variable Name jButtonKirim
Text Kirim
jLabel Variable Name jLabelRespon
Text Respon server
 Tambahkan perintah untuk mengimpor bebrapa pustaka yang diperlukan pada file
FrameUtama.java
Package modul1Klien;
Import java.io.*;
Import java.net.*;
 Tambahkan definisi variable yang akan dipakai dibawah header kelas
FrameUtama
Public class FrameUtama extends javax.swing.Jframe {
Socket socketKlien = null;
String line;
DataInputStream is;
PrintStream os;
 Event handler ActionPerformed untuk jButtonKonek
Private void jButtonKonekActionPerformed(java.awt.event.ActionEvent evt)
{
// TODO add your handlin code here;
If (jButtonKonek.getText().equals(“Hubungkan”)) {
Try {
socketKlien = new Socket(“localhost”, 2222);
is = new DataInputStream(socketKlien.getInputStream());
os = new PrintStream(socketKlien.getOutputStream());
jLabelKonek.setText(“Terhubung ke server”);
jButtonKonek.setText(“Putuskan”);
jLabelRespon.setText(is.readLine());
}
Catch (IOException e) {
jLabelKonek.setText(“Tidak dapat menghubungi server”);
}
}
Else {
Try {
Is.close();
Os.close();
socketKlien.close();
jLabelKonek.setText(“Tidak terhubung ke server”);
jButtonKonek.setText(“Hubungkan”);
}
Catch (IOException e) {
jLabelKonek.setText(“Ada error”);
}
}
}
 Event handler ActionPerformed untuk jButtonKonek
Private void jButtonKirimActionPerformed(java.net.event.ActionEvent evt)
{
//TODO add your handling code here:
If (jTextFieldPesan.getText().equals(“”)) {
jLabelKonek.setText(“Tidak dapat mengirim pesan kosong”);
}
Else {
If((jButtonKonek.getText().equals(“Putuskan”)
&& is != null)) {
Os.println(jTextFieldPesan.getText());
Os.flush();
jTextFieldPesan.setText(“”);
}
Else {
jLabelKonek.setText(“Tidak dapat mengirim ke server”);
jButtonKonek.setText(“Hubungkan”);
}
Try {
If (is != null)
jLabelRespon.setText(is.readLine());
}
Catch (IOException e) {
System.err.println(“Ada error”);
}
}
}

More Related Content

PDF
Sockets java
PPTX
Java лаб13
PDF
Socket.io - Intro
DOCX
Info server dan infoclient
PDF
Laporan info server dan info client
PDF
Info server dan infoclient
PDF
Info Client dan Info Server
DOCX
Info server dan info client
Sockets java
Java лаб13
Socket.io - Intro
Info server dan infoclient
Laporan info server dan info client
Info server dan infoclient
Info Client dan Info Server
Info server dan info client

What's hot (18)

DOCX
Ejercicios
PPTX
OpenResty/Lua 70+ Advanced Programming Skills and Optimization tips
DOCX
Laporan info server dan infoclient
PDF
Rambler.iOS #8: Чистые unit-тесты
KEY
How to stop writing spaghetti code - JSConf.eu 2010
DOCX
Mejor project
PDF
Node.JS
PDF
PDF
Фатальный недостаток Node.js
DOCX
Konfigurasi https web server
PDF
Ejerc3 141204195452-conversion-gate01
PDF
Discover ServiceWorker
PPTX
for loops
PDF
D2D Pizza JS Игорь Ковган "Koa поможет"
PDF
PyconRu 2016. Осторожно, DSL!
PDF
Testování prakticky
PDF
Invoke y como poner en marcha un entorno de trabajo
PDF
Linked list proj
Ejercicios
OpenResty/Lua 70+ Advanced Programming Skills and Optimization tips
Laporan info server dan infoclient
Rambler.iOS #8: Чистые unit-тесты
How to stop writing spaghetti code - JSConf.eu 2010
Mejor project
Node.JS
Фатальный недостаток Node.js
Konfigurasi https web server
Ejerc3 141204195452-conversion-gate01
Discover ServiceWorker
for loops
D2D Pizza JS Игорь Ковган "Koa поможет"
PyconRu 2016. Осторожно, DSL!
Testování prakticky
Invoke y como poner en marcha un entorno de trabajo
Linked list proj
Ad

Viewers also liked (16)

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

Tugas pemrograman jaringan

  • 1. TUGAS PEMROGRAMAN JARINGAN MEMBUAT APLIKASI SERVER  Tambahkan perintah untuk mengimpor beberapa pustaka yang diperlukan pada file Main.Java Package modul1server; Import java.net.*; Import java.io.*; Import java.util.*;  Tambahkan program pada fungsi main dalam kelas main Public static void main(string[] args) { ServerSocket echoServer = null; String line; DataInputStream is; PrintStream os; Socket socketKlien = null; Try { echoServer = new ServerSocket(2222); } Catch (IOException e) { System.out.println(e); } While (true) { Try { System.out.println( “Menunggu permintaan koneksi dari klien”); SocketKlien = echoServer.accpet(); System.out.println(“Permintaan koneksi diterima”); Is = new DataInputStream(SocketKlien.getInputStream());
  • 2. Os = new PrintStream(SocketKlien.getOutputStream()); Os.println(“Server: Halo, anda terhubung ke server echo pada” new Date()); While (true) { Line = is.readLine(); System.out.println(“Klien: “+line); Os.println(“Server: “+line); Os.flush(); If (line.equals(“quit”)) { Os.println(“Server: koneksi ditutup”); } } socketKlien.close(); } Catch (IOException e) { System.out.println(“Terdapat kesalahan pada soket”); } Catch (java.lang.NullPointerException e) { System.out.println(“Klien memutus koneksi”); } System.out.println(“Klien memutus koneksi”); } System.out.println(“Koneksi ditutup”); } } } MEMBUAT APLIKASI KLIEN  Komponen yang digunakan: Komponen Properti Isi jFrame Title Klien jButton Variabel Name jButtonKonek Text Hubungkan jLabel Variable Name jLabelKonek Text Tidak terhubung ke server jTextField Variable Name jTextFieldPesan Text (kosongkan) jButton Variable Name jButtonKirim
  • 3. Text Kirim jLabel Variable Name jLabelRespon Text Respon server  Tambahkan perintah untuk mengimpor bebrapa pustaka yang diperlukan pada file FrameUtama.java Package modul1Klien; Import java.io.*; Import java.net.*;  Tambahkan definisi variable yang akan dipakai dibawah header kelas FrameUtama Public class FrameUtama extends javax.swing.Jframe { Socket socketKlien = null; String line; DataInputStream is; PrintStream os;  Event handler ActionPerformed untuk jButtonKonek Private void jButtonKonekActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handlin code here; If (jButtonKonek.getText().equals(“Hubungkan”)) { Try { socketKlien = new Socket(“localhost”, 2222); is = new DataInputStream(socketKlien.getInputStream()); os = new PrintStream(socketKlien.getOutputStream()); jLabelKonek.setText(“Terhubung ke server”); jButtonKonek.setText(“Putuskan”); jLabelRespon.setText(is.readLine()); } Catch (IOException e) { jLabelKonek.setText(“Tidak dapat menghubungi server”); } }
  • 4. Else { Try { Is.close(); Os.close(); socketKlien.close(); jLabelKonek.setText(“Tidak terhubung ke server”); jButtonKonek.setText(“Hubungkan”); } Catch (IOException e) { jLabelKonek.setText(“Ada error”); } } }  Event handler ActionPerformed untuk jButtonKonek Private void jButtonKirimActionPerformed(java.net.event.ActionEvent evt) { //TODO add your handling code here: If (jTextFieldPesan.getText().equals(“”)) { jLabelKonek.setText(“Tidak dapat mengirim pesan kosong”); } Else { If((jButtonKonek.getText().equals(“Putuskan”) && is != null)) { Os.println(jTextFieldPesan.getText()); Os.flush(); jTextFieldPesan.setText(“”); } Else { jLabelKonek.setText(“Tidak dapat mengirim ke server”); jButtonKonek.setText(“Hubungkan”); } Try { If (is != null) jLabelRespon.setText(is.readLine()); } Catch (IOException e) { System.err.println(“Ada error”);