Abstrak
Perkembangan dunia komputer saat ini sudah sangat cepat ditandai dengan
perkembangan jaringan komputer dan perkembangan bahasa pemrograman. Dalam hal
ini dibutuhkan suatu program yang dapat melakukan integrasi dengan sistem lain yang
dapat berjalan diatas suatu teknologi jaringan cukup tinggi, sehingga mengharuskan kita
untuk lebih banyak belajar apa yang terjadi didalam proses komunikasi jaringan dan
bagaimana cara memprogramnya, yang dalam hal ini penulis mencoba untuk angkat
menjadi sebuah artikel yang berjudul mengenal pemrograman jaringan dengan java
socket. Dalam pemrograman jaringan, kita membutuhkan bahasa pemrograman java
yang memanfaatkan teknologi komunikasi jaringan untuk dapat mengirimkan data dari
sebuah proses ke proses lainnya melalui pipa yang menghubungkan keduanya. Java
telah menyediakan paket java.net yang berisi kelas-kelas dan interface seperti socket,
serversocket, dan datagramsocket. Dalam pemrograman jaringan, setelah membuat
sebuah pipa data antara dua proses maka masing-masing proses akan memegang satu
ujung, setiap ujung dari pipa data ini disebut socket. Aliran data antara kedua socket ini
disebut data stream. Masing-masing socket menggenggam dua stream, yaitu output
stream dan input stream.
Lisensi Dokumen:
Copyright 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
Pendahuluan
Tujuan dari penulisan artikel ini, agar para pembaca dapat mengenal pemrograman
jaringan dengan java socket. Manfaat dari tulisan artikel ini yaitu pembaca dapat
mengetahui bagaimana cara mengembangkan aplikasi client server sederhana dimana
sebuah server berjalan dapat menghubungi sebuah client yang dapat mengirimkan
sebuah pesan hallo world! dari server ke client. Penulis berharap dengan adanya
artikel ini menjadi langkah awal terbentuknya generasi baru yang memiliki daya
kreatifitas tinggi khususnya dalam bidang komputer dengan mengembangkan teknologi
komunikasi jaringan dengan bahasa pemrograman java yang didalamnya terdapat
socket. Pada bab pembahasan akan dibahas lebih lanjut mengenai pemrograman
jaringan dengan java socket, serta dibahas langkah-langkah membuat sebuah aplikasi
client server dengan java socket.
Pembahasan
Pemrograman jaringan dengan java socket dikembangkan untuk
menyambungkan proses-proses komputasi yang dapat berjalan dalam mesin-mesin yang
berbeda yang terhubung dalam suatu jaringan komputer.
Berikut ini terdapat contoh pemrograman jaringan dengan java socket, diantaranya
sebagai berikut :
Web browser mengakses web server melalui jaringan.
Aplikasi basis data, dimana didalamnya terdapat client dan server yang berada di
mesin komputer yang terpisah, dan dapat berinteraksi didalam jaringan.
Aplikasi e-mail dimana terdapat mail client yang dapat berkomunikasi dengan
mail server.
Didalam pemrograman jaringan dengan java socket, terdapat sebuah proses yang
dapat mengirimkan data ke proses yang lain dengan menuliskannya ke output stream
yang dimiliki sebuah socket. Sebuah proses dapat menerima data dengan membaca data
yang diterima dari input stream yang dimiliki oleh sebuah socket. Dengan cara ini maka
Lisensi Dokumen:
Copyright 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
dapat terjadi pertukaran data, dan dapat terjadi sebuah komunikasi dan interaksi antara
dua proses yang berbeda meskipun diantara keduanya terpisah dalam jaringan. Didalam
proses ini dapat terpisah akan tetapi terjaring, baik dalam intranet, extranet maupun
internet, dan tidak membatasi apabila dalam satu proses berada antar benua seperti
halnya proses yang terjadi berada di afrika tengah dan proses lainnya berada di tengah
samudra pasifik.
Kelas-kelas untuk mengembangkan pemrograman jaringan dengan java socket
dikumpulkan dalam package java.net, yang memiliki dua kelas utama yaitu sebagai
berikut :
java.net.serversocket, package ini digunakan untuk membangun sebuah server
java.net.socket, package ini digunakan untuk membangun pipa antara server dan
client
Untuk membuat pemrograman jaringan dengan java socket, kita harus
meyiapkan hal-hal berikut ini :
Kita perlu terlebih dahulu menginstall java development kit (jdk).
Setelah menginstall jdk masukkan list program aplikasi client server dengan java
socket pada sebuah directory, yang dalam hal ini penulis memasukkan list
program aplikasi client server pada directory C:\Documents and
Settings\RATIH SD\Java\jdk1.6.0_07\bin.
Lisensi Dokumen:
Copyright 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
public class HalloWorldServer
{
private String namaServer;
private ServerSocket serverSocket;
Lisensi Dokumen:
Copyright 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
2. Langkah 2 : Membuat list program HalloWorldServerApp.java dengan text
editor
Buatlah list program berikut ini dan simpanlah dengan nama file
HalloWorldServerApp.java pada directory yang sudah dibuat sebelumnya.
try
{
String namaServer = args[0];
String portStr = args[1];
int port = Integer.parseInt(portStr);
HalloWorldServer server =
new HalloWorldServer(namaServer, port);
server.operateService();
}
catch(java.io.IOException ioe)
{
ioe.printStackTrace();
}
}
}
Lisensi Dokumen:
Copyright 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
3. Langkah 3 : Membuat list program HalloWorldClient.java dengan text editor
Buatlah list program berikut ini dan simpanlah dengan nama file
HalloWorldClient.java pada directory yang sudah dibuat sebelumnya.
import java.io.*;
import java.net.*;
Lisensi Dokumen:
Copyright 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
System.out.println(pesan);
bufferedReader.close();
printWriter.close();
System.out.println(namaClient + " menutup connection.");
socket.close();
}
}
try
{
String namaClient = args[0];
String alamatServer = args[1];
String portStr = args[2];
int port = Integer.parseInt(portStr);
HalloWorldClient client = new HalloWorldClient
(namaClient, alamatServer, port);
client.connectToServer();
}
catch(java.io.IOException ioe)
{
ioe.printStackTrace();
}
}
}
Lisensi Dokumen:
Copyright 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
5. Langkah 5 : Persiapkan dua buah program command prompt
Untuk menjalankan aplikasi client server, kita harus menyiapkan dua buah
program command prompt dengan langkah-langkah berikut ini klik StartAll
ProgramsAccessoriesCommand Prompt. Setelah itu, kita melakukan perubahan
directory pada kedua program command prompt tersebut ke directory yang sudah kita
buat sebelumnya.
- Menyiapkan program command prompt pertama untuk menjalankan aplikasi server
dan mengubah file directory, seperti contoh gambar dibawah ini penulis
memasukkan aplikasi server pada directory C:\Documents and Settings\RATIH
SD\Java\jdk1.6.0_07\bin.
Lisensi Dokumen:
Copyright 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
6. Langkah 6 : Meng-compile helloworldserverapp.java pada program command
prompt pertama
Melalui program command prompt kita mulai meng-compile file
HelloWorldServerApp.java dengan menjalankan perintah javac, sebagai berikut :
javac HelloWorldServerApp.java
Apabila kita menjalani aplikasi client server dengan mengikuti langkah-langkah
dengan benar, maka kita akan menemukan file HelloWorldServerApp.class, dan
HelloWorldServer.class didalam directory yang sama.
Lisensi Dokumen:
Copyright 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
Tampilan yang muncul pada command prompt pertama :
Lisensi Dokumen:
Copyright 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
10. Langkah 10 : Perkembangan komunikasi aplikasi client-server dengan java
socket
- Pada saat HalloWorldServerApp mendapat connection, akan ditemukan catatan
pada program command prompt pertama berikut ini :
Penutup
Demikianlah artikel ini dibuat dengan judul mengenal pemrograman jaringan dengan
java socket, semoga artikel ini dapat bermanfaat bagi para pembaca dan penulis
berharap dengan adanya artikel ini semoga para pembaca tidak hanya dapat mengenal
Lisensi Dokumen:
Copyright 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
pemrograman jaringan dengan java socket, para pembaca pun semoga dapat mencoba
membuat sebuah aplikasi client server dengan teknologi java socket yang dapat
mengirimkan sebuah pesan seperti pesan hallo world ! dari server ke client.
Referensi
http://ikc.dinus.ac.id/berseri/eko-java/jaringan.php
http://wahyuganteng72.blogspot.com/2011/02/jaringan-network-dalam-
pemrograman.html
http://sumarna.staff.gunadarma.ac.id/.../4.+TCP+Socket.pdf
http://lecturer.ukdw.ac.id/anton/download/PEMROGRAMAN%20JARINGAN-
Modul6.pdf
http://andipublisher.com/produk-1202004184-pemrograman-jaringan-dengan-java-
cd.html
http://felix.staff.unisbank.ac.id/files/2011/03/BPP-Pemrograman-Jaringan.pdf
http://firmanfujiansyah.wordpress.com/category/pemrograman-jaringan/
Biografi
Wiranti Sri Utami. Lahir di Tangerang, pada bulan November. Telah
menyelesaikan pendidikan dasar dan menengah di SD Negeri 2 Teluknaga
dan SMP Negeri 1 Teluknaga. Menamatkan SMA di SMA Negeri 6
Tangerang pada tahun 2008. Menempuh pendidikan Profesional IT selama 2
tahun di CEP-CCIT FTUI (Continuing Education Program - Center for Computing
Information Technology Faculty of Engineering - University of Indonesia), jurusan
Software Engineering Java Programming pada tahun 2008-2010. Saat ini wiranti
bekerja di Lion Air Bandara Soekarno-Hatta sebagai Administrator dan melanjutkan
kuliah S1 di STMIK Raharja mengambil jurusan Teknik Informatika, konsentrasi
Software Engeenering.
Informasi lebih lanjut dapat melalui email penulis : whiranty68@gmail.com
Lisensi Dokumen:
Copyright 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org