Membangun Servlet Java Sederhana

15
   Komunitas eLearning IlmuKomputer .Com Copyright © 2003-2010 IlmuKomputer.Com 1 Membangun Servlet Java Sederhana Ari Fadli  fadli.te.unsoed@gmai l http://fadli84.wordpress.com Pada tulisan kali ini penulis akan sedikit berbagi ilmu mengenai pemrograman java, khususnya mengenai, java serlvet, dalam tulisan kali ini penulis menggunakan versi  java JDK1.5 dan text editor notepad Sejarah Bahasa Pemrograman Java Bahasa pemrograman Java pertama lahir dari The Green Project , yang berjalan selama 18 bulan, dari awal tahun 1991 hingga musim panas 1992. Proyek tersebut belum menggunakan versi yang dinamakan Oak. Proyek ini dimotori oleh Patrick Naughton, Mike Sheridan, James Gosling dan Bill Joy,  beserta sembilan pemrogram lainnya dari Sun Micro systems. Salah satu hasil proyek ini adalah maskot Duke yang dibuat oleh Joe Palrang. Pertemuan proyek berlangsung di sebuah gedung perkantoran Sand Hill Road di Menlo Park. Sekitar musim panas 1992 proyek ini ditutup dengan menghasilkan sebuah  program Java Oak pert ama, yang ditujukan sebagai pengendali sebuah peralatan dengan teknologi layar sentuh (touch screen), seperti pada PDA sekarang ini. Teknologi baru ini dinamai "*7" (Star Seven). Setelah era Star Seven selesai, sebuah anak perusahaan TV kabel tertarik ditambah  beberapa orang dari proyek The Green Pr oject. Mereka memusatkan kegiat annya pada sebuah ruangan kanto r di 100 Hamilton A venue, Palo Alto. L i sensi Do kum e n: Copyright © 2003-2010 IlmuKomputer.Com Selu ruh dokumen d i IlmuKompute r .Com dapat digunaka n, dimodifi kasi dan disebarka n 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  IlmuKomputer .Com.

Transcript of Membangun Servlet Java Sederhana

Membangun Servlet Java SederhanaAri Fadlifadli.te.unsoed@gmail http://fadli84.wordpress.com

Lisensi Dokumen: Copyright 2003-2010 IlmuKomputer.Com Seluruh dokumen di IlmuKomputer.Com 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 IlmuKomputer.Com.

Pada tulisan kali ini penulis akan sedikit berbagi ilmu mengenai pemrograman java, khususnya mengenai, java serlvet, dalam tulisan kali ini penulis menggunakan versi java JDK1.5 dan text editor notepad

Sejarah Bahasa Pemrograman JavaBahasa pemrograman Java pertama lahir dari The Green Project, yang berjalan selama 18 bulan, dari awal tahun 1991 hingga musim panas 1992. Proyek tersebut belum menggunakan versi yang dinamakan Oak. Proyek ini dimotori oleh Patrick Naughton, Mike Sheridan, James Gosling dan Bill Joy, beserta sembilan pemrogram lainnya dari Sun Microsystems. Salah satu hasil proyek ini adalah maskot Duke yang dibuat oleh Joe Palrang. Pertemuan proyek berlangsung di sebuah gedung perkantoran Sand Hill Road di Menlo Park. Sekitar musim panas 1992 proyek ini ditutup dengan menghasilkan sebuah program Java Oak pertama, yang ditujukan sebagai pengendali sebuah peralatan dengan teknologi layar sentuh (touch screen), seperti pada PDA sekarang ini. Teknologi baru ini dinamai "*7" (Star Seven). Setelah era Star Seven selesai, sebuah anak perusahaan TV kabel tertarik ditambah beberapa orang dari proyek The Green Project. Mereka memusatkan kegiatannya pada sebuah ruangan kantor di 100 Hamilton Avenue, Palo Alto.

Komunitas eLearning IlmuKomputer.Com Copyright 2003-2010 IlmuKomputer.Com

1

Perusahaan baru ini bertambah maju dengan jumlah karyawan meningkat dalam waktu singkat dari 13 menjadi 70 orang. Pada rentang waktu ini juga ditetapkan pemakaian Internet sebagai medium yang menjembatani kerja dan ide di antara mereka. Pada awal tahun 1990-an, Internet masih merupakan rintisan, yang dipakai hanya di kalangan akademisi dan militer. Mereka menjadikan perambah (browser) Mosaic sebagai landasan awal untuk membuat perambah Java pertama yang dinamai Web Runner, terinsipirasi dari film 1980-an, Blade Runner. Pada perkembangan rilis pertama, Web Runner berganti nama menjadi Hot Java. Pada sekitar bulan Maret 1995, untuk pertama kali kode sumber Java versi 1.0a2 dibuka. Kesuksesan mereka diikuti dengan untuk pemberitaan pertama kali pada surat kabar San Jose Mercury News pada tanggal 23 Mei 1995. Sayang terjadi perpecahan di antara mereka suatu hari pada pukul 04.00 di sebuah ruangan hotel Sheraton Palace. Tiga dari pimpinan utama proyek, Eric Schmidt dan George Paolini dari Sun Microsystems bersama Marc Andreessen, membentuk Netscape. Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan kerja "bapak java", James Gosling. Nama Oak ini tidak dipakai untuk versi release Java karena sebuah perangkat lunak sudah terdaftar dengan merek dagang tersebut, sehingga diambil nama penggantinya menjadi "Java". Nama ini diambil dari kopi murni yang digiling langsung dari biji (kopi tubruk) kesukaan Gosling.

Apa Itu Bahasa JavaBahasa Java adalah sebuah bahasa pemrograman komputer berbasiskan kepada objek (Object Oriented Programming). Java diciptakan setelah C++ dan didesain sedemikian sehingga ukurannya kecil, sederhana, dan portable (dapat dipindah-pindahkan di antara bermacam platform dan sistem operasi atau biasa disebut write one run any where yang artinya sekali tulis dan bisa dijalankan dimana saja). Program yang dihasilkan dengan bahasa Java dapat berupa applet (aplikasi kecil yang jalan di atas web browser) maupun berupa aplikasi mandiri yang dijalankan dengan program Java Interpreter. Contoh program yang ditulis dengan bahasa Java adalah HotJava yang berupa sebuah web browser.

Komunitas eLearning IlmuKomputer.Com Copyright 2003-2010 IlmuKomputer.Com

2

Versi awalVersi awal Java ditahun 1996 sudah merupakan versi release sehingga dinamakan Java Versi 1.0. Java versi ini menyertakan banyak paket standar awal yang terus dikembangkan pada versi selanjutnya: java.lang java.io java.util : Peruntukan kelas elemen-elemen dasar. : Peruntukan kelas input dan output, termasuk penggunaan berkas. : Peruntukan kelas pelengkap seperti kelas kelas penanggalan dan struktur data java.net : Peruntukan kelas TCP/IP, yang memungkinkan berkomunikasi dengan komputer lain menggunakan jaringan TCP/IP. java.awt : Kelas dasar untuk aplikasi antarmuka dengan pengguna (GUI)

java.applet : Kelas dasar aplikasi antar muka untuk diterapkan pada penjelajah web

KelebihanMultiplatform. Kelebihan utama dari Java ialah dapat dijalankan di beberapa platform / sistem operasi komputer, sesuai dengan prinsip tulis sekali, jalankan di mana saja. Dengan kelebihan ini pemrogram cukup menulis sebuah program Java dan dikompilasi (diubah, dari bahasa yang dimengerti manusia menjadi bahasa mesin / bytecode) sekali lalu hasilnya dapat dijalankan di atas beberapa platform tanpa perubahan. OOP (Object Oriented Programming - Pemrogram Berorientasi Objek) Artinya semua aspek yang terdapat di Java adalah Objek. Java merupakan salah satu bahasa pemrograman berbasis objek secara murni. Semua tipe data diturunkan dari kelas dasar yang disebut Object. Perpustakaan Kelas Yang Lengkap Java terkenal dengan kelengkapan library/perpustakaan (kumpulan program program yang disertakan dalam pemrograman java) yang sangat memudahkan dalam penggunaan oleh para pemrogram untuk membangun aplikasinya. Bergaya C++ Memiliki sintaks seperti bahasa pemrograman [C++] sehingga menarik banyak pemrogram C++ untuk pindah ke Java. Saat ini pengguna Java sangat banyak, sebagian besar adalah pemrogram C++ yang pindah ke Java. Universitas-universitas

Komunitas eLearning IlmuKomputer.Com Copyright 2003-2010 IlmuKomputer.Com

3

di Amerika juga mulai berpindah dengan mengajarkan Java kepada murid-murid yang baru karena lebih mudah dipahami oleh murid dan dapat berguna juga bagi mereka yang bukan mengambil jurusan komputer. Pengumpulan sampah otomatis Memiliki fasilitas pengaturan penggunaan memori sehingga para pemrogram tidak perlu melakukan pengaturan memori secara langsung (seperti halnya dalam bahasa C++ yang dipakai secara luas).

KekuranganTulis sekali Dengan pengertian bahawa dapat perbaiki di mana saja - Masih ada beberapa hal yang tidak kompatibel antara platform satu dengan platform lain. Untuk J2SE, misalnya SWT-AWT bridge yang sampai sekarang tidak berfungsi pada Mac OS X. Mudah didekompilasi Dekompilasi adalah proses membalikkan dari kode jadi menjadi kode sumber. Ini dimungkinkan karena kode jadi Java merupakan bytecode yang menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-nama kelas, metode, dan tipe data. Hal yang sama juga terjadi pada Microsoft .NET Platform. Dengan demikian, algoritma yang digunakan program akan lebih sulit disembunyikan dan mudah

dibajak/direverse-engineer. Penggunaan memori yang banyak Penggunaan memori untuk program berbasis Java jauh lebih besar daripada bahasa tingkat tinggi generasi sebelumnya seperti C/C++ dan Pascal (lebih spesifik lagi, Delphi dan Object Pascal). Biasanya ini bukan merupakan masalah bagi pihak yang menggunakan teknologi terbaru (karena trend memori terpasang makin murah), tetapi menjadi masalah bagi mereka yang masih harus berkutat dengan mesin komputer berumur lebih dari 4 tahun.

Komunitas eLearning IlmuKomputer.Com Copyright 2003-2010 IlmuKomputer.Com

4

Apa Itu ServletServlet merupakan teknologi Java yang didesain untuk membuat aplikasi web. Teknologi Java lain yang lebih baru dari servlet dan digunakan untuk keperluan yang sama dinamakan dengan sebutan JSP (JavaServer Pages), yang di dalamnya sudah sangat memudahkan kita dalam mengembangkan aplikasi web, walaupun sebenarnya secara internal aplikasi JSP juga akan melalui proses penerjemahan ke servlet terlebih dahulu. Untuk saat ini, saya tidak akan bercerita banyak mengenai JSP. Di sini saya hanya akan menunjukkan bagaimana caranya membuat aplikasi servlet, tentunya dengan aplikasi andalan : yaitu "Hello World". Meskipun demikian, mudah-mudahan tulisan saya ini akan membantu Anda yang ingin konsen ke arah pengembangan web dengan menggunakan teknologi servlet. Ok sebelum kita mencoba berlatih membuat servlet sederhana alangkah baiknya anda terlebih dahulu kenal dengan kelas yang digunakannya

HttpServletRequestClass HttpServletRequest digunakan untuk meng-encapsulate HTTP request dari client. Untuk membaca parameter-parameter yang dikirimkan client, tersedia method-method getParameter(), getParameterNames() dan getParameterValues(). Untuk mendapatkan header dari HTTP request tersedia method getHeader(), dan membaca cookie tersedia method getCookie(). Untuk mendapatkan informasi tentang server di mana Servlet bekerja, tersedia method getServerName() dan getServerPort(). Untuk mendapatkan informasi tentang client yang memanggil Servlet, tersedia method getRemoteAddr(), getRemoteHost() dan getRemoteUser().

HttpServletResponseClass HttpServletResponse digunakan untuk meng-encapsulate HTTP response yang dikirimkan Servlet ke client. Method getWriter() bisa digunakan untuk mendapatkan obyek PrintWriter. Method getOutputStream() bisa digunakan untuk mendapatkan obyek ServletOutputStream. Melalui obyek PrintWriter atau ServletOutputStream, Anda bisa menuliskan response ke client. Obyek PrintWriter cocok jika response Anda adalah character, misal dalam format HTML, sedangkan obyek ServletOutputStream cocok jika response Anda adalah binary, misalnya berupa graphics. Method setHeader()

Komunitas eLearning IlmuKomputer.Com Copyright 2003-2010 IlmuKomputer.Com

5

bisa digunakan untuk menuliskan header, dan method setCookie() bisa digunakan untuk menuliskan cookie. Method setStatus() bisa digunakan untuk mengirimkan status code ke client.

Latihan 1Untuk dapat membuat aplikasi servlet tentu kita harus memiliki sebuah Servlet/JSP Container, nah oleh karena itu dalam contoh ini saya akan menggunakan Jakarta Tomcat. Berikut ini langkah-langkah yang diperlukan dalam proses membuat servlet: Langkah 1 Download software Jakarta Tomcat (versi 5.5.9) di http://jakarta.apache.org/site/downloads/downloads_tomcat-5.cgi Langkah 2 Lakukan installasi dan konfigurasi yang diperlukan dan jika anda yang termasuk pemula dalam pemrograman java ini saya sarankan anda untuk membaca informasi lebih lanjut untuk melihat cara konfigurasinya di http://www.coreservlets.com/Apache-Tomcat-Tutorial/. Bila Anda tidak mau pusing, saya merekomendasikan agar Anda men-download software Jakarta Tomcat yang sudah dikonfigurasi (siap pakai) melalui http://www.coreservlets.com/Apache-Tomcat-Tutorial/#Preconfigured-Tomcat. Langkah 3 Buatlah struktur direktori baru seperti berikut: 3.1.Buat direktori (misal: servletpertama) di dalam direktori jakarta-tomcat-5.5.9/webapps 3.2. Buat direktori dengan nama WEB-INF di dalam direktori servletpertamaku 3.3. Buat direktori dengan nama classes di dalam direktori WEB-INF

Komunitas eLearning IlmuKomputer.Com Copyright 2003-2010 IlmuKomputer.Com

6

Langkah 4 Buatlah file berekstensi java (misal: servletpertama.java) dengan kode sumber seperti tampak pada Tabel 1 berikut ini, untuk kemudian menyimpan file tersebut di dalam direktori WEB-INF/classes. :Tabel 1 import import import import

javax.servlet.*; javax.servlet.http.*; java.util.*; java.io.*;

public class servletpertama extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { PrintWriter out = res.getWriter(); out.println(""); out.println(""); out.println("A Simple Servlet"); out.println(""); out.println(""); out.println(""); out.println("Hello Servlet..."); out.println(""); out.println(""); out.println(""); } }

Langkah 5 Lakukan kompilasi terhadap file di atas, dengan menuliskan perintah:javac -classpath C:/jakarta-tomcat-5.5.9/common/lib/servlet-api.jar servletpertama.java

Catatan:

dengan asumsi saya adalah anda melakukan installasi software pada drive C.

seperti tampak pada gambar 1 dibawah ini (yang ada dalam gambar 1 dibawah ini digunakan penulis ketika menggunakan apache tomcat versi 6 :

gambar 1

Komunitas eLearning IlmuKomputer.Com Copyright 2003-2010 IlmuKomputer.Com

7

Langkah 6 Buatlah file deployment descriptor (langkah opsional) dengan cara buatlah sebuah Deployment descriptor yang merupakan sebuah komponen opsional di dalam aplikasi servlet yang harus berada di dalam direktori WEB-INF. Tuliskan kode yang tampak seperti pada Tabel 2 berikut ke dalamnya dan simpan file dengan nama web.xml.

Tabel 2 servletpertama servletpertama servletpertama /servletpertama

Keterangan : : adalah nama alias untuk aplikasi servlet yang Anda buat, sedangkan : akan menunjukkan nama file hasil kompilasi (tanpa ekstensi .class)

Langkah 7 Jalankan service dari Jakarta Tomcat, melalui perintah berikut: cd jakarta-tomcat-5.5.9/bin startup.bat

Langkah 8 Panggil aplikasi servlet Anda dari sebuah web browser, dengan format URL seperti di bawah ini. http://name-domain:nomor port/namadiretori/servlet/namaservlet

Untuk kasus ini, kita harus menuliskannya seperti berikut: http://localhost:8080/servletpertama/servletpertama

Komunitas eLearning IlmuKomputer.Com Copyright 2003-2010 IlmuKomputer.Com

8

Jika langkah yang anda lakukan benar maka akan tampak dalam browser anda seperti pada gambar 2 dibawah ini :

gambar 2

Latihan 2 Untuk membuat anda bertambah mahir dalam membuat servlet mari kita berlatih kembali, dan ikutilah serta praktikan langkah demi langkah dibawah ini : Langkah ke-1 Buat sebuah file HTML dengan membuat sebuah form dan kemudian simpan di directory aplikasijava dengan nama file : formku.html sehingga bentuk hirarki direktorinya adalah sebagai berikut : servletpertama/formku.html, dengan kode sumber file formku.html seperti tampak pada Tabel 3 berikut ini :Tabel 3 Nama Anda :

Komunitas eLearning IlmuKomputer.Com Copyright 2003-2010 IlmuKomputer.Com

9

Langkah ke-2 Ketiklah sebuah Java Servlet, dan simpan di dalam sub directory classes di atas, seperti tampak pada Tabel 4 berikut. Kemudian simpan dengan nama Servletpertamaku.java dan diletakan dibawah direktori classes (untuk pembuatan hirarki direktori yang dibutuhkan sama dengan yang telah anda lakukan pada langkah 1 diatas. aplikasijava/WEB-INF/classes/servletpertama.javaTabel 4 import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class servletpertama extends HttpServlet { public void service(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); String name = request.getParameter("name"); out.println(""); out.println("Hi " + name + ", apakabar !"); out.println(""); } }

Langkah ke-3 Kompilasilah file kode sumber java yang baru saja anda ketik sebelumnya dengan jalan sebagai berikut :javac -classpath C:/jakarta-tomcat-5.5.9/common/lib/servlet-api.jar

WEB-INF/classes/servletpertama.java Langkah ke-4 Buatlah sebuah Deployment descriptor yang diberi nama web.xml seperti tampak pada Tabel 5 dibawah ini :Tabel 5 servletpertama servletpertama servletpertama /servletpertama

Komunitas eLearning IlmuKomputer.Com Copyright 2003-2010 IlmuKomputer.Com

10

Langkah ke-5 Shutdown lalu start kembali Tomcat Langkah ke-6 Akses URL sbb : http://localhost:8080/servletpertama/formku.html Langkah ke-7 Coba masukkan sebuah nama ... dan tekan tombol

gambar 3

Komunitas eLearning IlmuKomputer.Com Copyright 2003-2010 IlmuKomputer.Com

11

gambar 4

TUGAS 3 Menunjukkan strategi MVC, dimana Servlet bekerja sebagai controller, dan JSP sebagai view. Langkah ke-1 Editlah servlerpertama.java sbb : servletpertama/WEB-INF/classes/servlerpertama.javaTabel 6 import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class servletpertama extends HttpServlet { public void service(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); String name = request.getParameter("name"); String pesan = "Hi" + name + ", apakabar !"; request.setAttribute("pesan", pesan); RequestDispatcher dispatcher = request.getRequestDispatcher("message.jsp"); dispatcher.forward(request, response); } }

Komunitas eLearning IlmuKomputer.Com Copyright 2003-2010 IlmuKomputer.Com

12

Langkah ke-2 Kompilasilah file kode sumber java yang baru saja anda ketik sebelumnya dengan jalan sebagai berikut :javac -classpath C:/jakarta-tomcat-5.5.9/common/lib/servlet-api.jar

WEB-INF/classes/servletpertama.java Langkah ke-3 Ketik sebuah file berekstensi JSP dengan nama message.jsp yang kemudian diletakan dibawah direktori servletpertama. servletpertama/message.jspTabel 7

Komunitas eLearning IlmuKomputer.Com Copyright 2003-2010 IlmuKomputer.Com

13

Langkah ke-4 Shutdown dan Startup kembali Tomcat. Langkah ke-5 Coba akses melalui browser dan http://localhost:8080/servletpertama/formku.html maka akan tampak halaman seperti pada gambar 5 berikut :

gambar 5

Penutup Akhir kata penulis berharap semoga tulisan ini bermanfaat bagi setiap pembacanya, dan Tidak mungkin kita mencapai keberhasilan usaha tanpa sebuah kerja keras dan jangan lupa pula mulailah hidupmu dari mimpimu, karena dengan mimpi yang ada dalam pikiranmu kau bisa menaklukan dunia. Sebelum dan sesudahnya penulis juga ingin mengucapkan terima kasih pada Komunitas Ilmukomputer.com terutama pada pak romi yang sudah mengexplore tulisan saya dan harapan saya kedepan saya bisa menjadi penulis tetap di ilmukomputer.com ini, sampai jumpa di episode lain dari tulisan saya, terima kasih. Referensi http://onno.vlsm.org/v11/ref-ind-1/network/sekilas-java-1997.rtf

Komunitas eLearning IlmuKomputer.Com Copyright 2003-2010 IlmuKomputer.Com

14

Biografi Penulis Ari Fadli, Lahir di Cirebon, 31 Juli 1984. Menamatkan SMU di SMU Negeri 4 Cirebon. Menyelesaikan program S1 dari Jurusan Teknik Program Studi Teknik Elektro, Universitas Jenderal Soedirman Puwokerto pada tahun 2007. Saat ini menjadi dosen di Jurusan Teknik Program Studi Teknik Elektro, Universitas Jenderal Soedirman Puwokerto. Kompetensi awalnya adalah bidang basis data, sistem informasi, sistem pakar dan saat ini sedang bergerak ke arah open source .

Komunitas eLearning IlmuKomputer.Com Copyright 2003-2010 IlmuKomputer.Com

15