Sabtu, 30 Mei 2015

Pertemuan 9 - JSP

JSP ( Java Server Page )





JSP adalah teknologi untuk mengontrol isi atau tampilan halaman Web melalui penggunaan servlet, program kecil yang dijalankan di server Web. Halaman HTML yang berisi link ke servlet Java memiliki akhiran .jsp

JSP merupakan solusi dari servlet. Kita tidak perlu mengkodekan teks-teks HTML pada program, tapi cukup menyisipkan kode JSP pada teks HTML. Artinya bagian static yang berupa tag-tag HTML akan terpisah dari kode JSP. Kita dapat membuat halaman web static dengan HTML / Web editor, kemudian kita sisipi dengan kode JSP untuk membuat halaman menjadi web dinamis. application server, browser dan development tool.

Arsitektur JSP

Pemakai yang ingin mengakses halaman Web mula-mula mengirimkan permintaan halaman Web melalui protokol HTTP (HyperText Transfer Protocol) dalam bentuk JSP (berekstensi .jsp). Permintaan ini akan disampaikan ke Web server. Kemudian Web server mengambil dokumen JSP dan mengirimkan ke JSP Servlet Engine. 




Bagian inilah yang melakukan pemrosesan kode-kode JSP (termasuk di dalamnya melakukan pengompilasian) dan membentuk kode HTML. Berikutnya, kode HTML ini disampaikan oleh Web server ke klien yang memintanya. Kode HTML ini selanjutnya diproses oleh browser sehingga pemakai bisa memperoleh informasi dari halaman Web yang dikehendakinya.

Detail pemrosesan oleh JSP Servlet engine adalah sebagai berikut:
1. Melakukan pemilahan (parsing) kode JSP,
2. Membangkitkan kode sumber Servlet,
3. Mengkompilasi kode sumber Servlet menjadi sebuah kelas,
4. Membuat instan servlet,
5. Memberikan keluaran servlet ke Web server



Cara Menggunakan Teknologi Java Dalam Web

·      APPLET



Applet merupakan program Java yang disisipkan pada halaman HTML dengan menggunakan tag <APPLET>. Kita dapat membuat sebuah program yang kompleks dengan menggunakan bahasa Java kemudian jika ingin ditampilkan dalam halaman web, kita menyimpan program tersebut dalam bentuk applet dan menyisipkannya pada halaman-halaman HTML. Applet ini akan dieksekusi oleh Java Virtual Machine (JVM) pada browser. Sayangnya seringkali komputer client tidak didukung oleh JVM, sehingga applet tersebut tidak dapat dijalankan.


·      SERVLET


Servlet adalah program yang ditulis dengan bahasa Java yang dijalankan pada server yang terkoneksi web. Pada servlet, komputer client tidak membutuhkan JVM, karena semua kode program akan dieksekusi di sisi server. Output yang akan disampaikan kepada browser client adalah murni HTML. Servlet ini akan dikompilasi dalam bentuk class. Servlet secara umum mampu meningkatkan sisi interaktif dan dinamis halaman web. Kelemahan dari servlet adalah teks-teks HTML yang berisi tampilan halaman harus dibuat dengan menggunakan bahasa pemrograman Java. Hal ini menyulitkan jika kita ingin mengubah tampilan bagian HTML-nya, karena berarti kita harus membuka kembali kode program java di servlet.

·      JSP



JSP merupakan solusi dari servlet. Kita tidak perlu mengkodekan teks-teks HTML pada program, tapi cukup menyisipkan kode JSP pada teks HTML. Artinya bagian static yang berupa tag-tag HTML akan terpisah dari kode JSP. Kita dapat membuat halaman web static dengan HTML/Web editor, kemudian kita sisipi dengan kode JSP untuk membuat halaman menjadi web dinamis. application server, browser dan development tool.



Contoh JSP
<html>
<head><title>Contoh JSP</title>
</head>
<body>
Waktu sekarang : <%= new java.util.Date() %>
</body>
</html>

Script diatas adalah file JSP yang simple yang melakukan penyambutan untuk site user sebagai penginformasian tanggal dan waktu saat ini untuk user. Dari contoh diatas, kita dapat melihat bahwa file JSP merupakan sebagian besar dari HTML. Hanya pada bagian ini yang beda :

<%= new java.util.Date()%>

Hal ini merupakan bagian dari kode Java untuk menampilkan hari dan tanggal pada saat itu juga. Hal ini mempermudah unutk membuat objek baru untuk membuat objek Date dan menampilkannya sebagai String.



Daur Hidup JSP

Sebagai gambaran bagaimana JSP melalui masa hidupnya bisa dilihat pada gambar berikut  :



Seperti tipe aplikasi java lainnya (Servlet, Applet, Midlet dll), JSP juga bertipe  strong Type artinya penggunaan variable pada halaman tersebut harus dideklarasikan  terlebih dahulu. Misalnya pada sintaks pengulangan berikut:

for (int i=1; i<13; i++)
{
// statement
}

Seperti halnya skrip-skrip server side yang lain, JSP pun memerlukan Web server.  Skrip ASP memerlukan IIS sebagai web server, PHP memerlukan IIS atau Apache, sedangkan JSP bisa menggunakan Apache Tomcat sebagai salah satu web server yang mendukungnya. Agar bisa menjalankan file-file JSP yang berbasis Java, diperlukan web server yang mampu memproses Java, atau minimal JSP engine yang dapat terintegrasi dengan web server.


Elemen-elemen JSP

Struktur halaman JSP adalah penambahan program Java dalam tag <% %> pada suatu halaman HTML untuk membangkitkan content yang bersifat dinamik.

JSP memiliki tiga komponen utama

1.    Directives : merupakan suatu petunjuk bagi web container tentang sesuatu yang harus dilakukan pada saat container melakukan compile halaman JSP.
Contoh : <%@ namaDirective attribute1=”value1” attribute2 =”value2” %>
2.    Scripting Elements : tag untuk menuliskan program Java.
Contoh : <%! int i = 10 ; double x = 5.0 ; %>
3.    Action : special tag yang memberikan pengaruh pada halaman JSP pada saat runtime.
Contoh : beanName = “beanName” type = “typeName”

Scripting Elemen JSP


1.    Declarations
Declarations merupakan blok program Java yang digunakan untuk mendeklarasikan variable dan method yang akan digunakan dalam program. Variable yang dideklarasikan pada bagian ini akan berperan sebagai variable global pada servlet hasil kompile.

Sintaks : <%! Deklarasi variable dan method %>
Contoh : <%! int i = 10 ; double x = 5.0 ; %>

2.    Scriptlets
Scriptlets merupakan blok program Java yang dieksekusi pada saat pemrosesan request. Scriptlets akan dijalankan sesuai dengan instruksi program yang diberikan.

Sintaks : <% Sintaks Program Java %>
Contoh : <% System.out.println(“Test Scriptlets”); %>

3.    Expression
Expression merupakan cara untuk memperpendek penulisan scriptlets dan akan mengembalikan nilai String yang dikirim melalui output stream.

Sintaks : <%= Ekspresi Java %>
Contoh : <%String oAnalisa=oAnalisaReview.getAnalisa(oIDK);%>



Dua alasan penting yang membuat JSP banyak digunakan oleh para pengembang aplikasi Web

1.    JSP menggunakan bahasa Java. Bagi para pemrogram yang telah mengenal Java,  sangatlah mudah untuk membuat aplikasi Web dengan JSP mengingat dasar JSP adalah bahasa Java. Dengan demikian mereka tidak perlu lagi belajar bahasa baru untuk membuat aplikasi Web.

2.    JSP mendukung multiplatform. Dalam hal ini JSP memang bukan satu-satunya perangkat lunak pembuat aplikasi Web yang bersifat multiplatform. PHP, misalnya, juga bersifat multiplatform. Keunggulan dari adanya dukungan multiplatform adalah memungkinkan kode dapat dipindah-pindahkan ke berbagai platform tanpa perlu melakukan perubahan apapun pada kode tersebut. Sebagai contoh, Anda bisa menulis kode JSP yang pada awalnya ditujukan untuk dijalankan pada Windows, dan kemudian dipindahkan ke lingkungan lain, misalnya Linux.


Kenapa menggunakan JSP ?

1.    Sejak JSPs merupakan dokumen text seperti HTML, para pengembang menghindari format dan manipulasi yang memungkinkan String yang sangat panjang untuk menghasilkan output. Content HTML sekarang tidak ditempelkan dengan berbagai macam kode dari Java. Hal ini membuatnya lebih mudah untuk dipelihara.
2.    JSPs lebih dikenal oleh semua orang dengan pengetahuan dari HTML, hanya dengan mempelajari markup dynamic. Hal ini membuatnya mungkin untuk para desainer site untuk membuat template HTML dari sebuah site, dengan para pengembang memprosesnya suatu saat nanti untuk memasukkan tags yang menghasilkan dynamic content. Hal ini juga memudahkan dalam pengembangan web page.
3.    JSPs memiliki built-in yang mendukung untuk penggunaan komponen software yang dapat digunakan kembali(JavaBeans). Hal ini tidak hanya membiarkan para pengembang menghindari kemungkinan menemukan kembali inti/kemudi dari tiap aplikasi, mempunyai software pendukung untuk memisahkan komponen software untuk menghandle logic promotes separation dari presentasi dan business logic.
4.    JSPs, merupakan bagian solusi dari Java untuk pengembang aplikasi web, merupakan multi-platform yang tak terpisahkan dan dapat dijalankan pada berbagai container servlet yang compatible, dengan mengabaikan vendor atau sistem operasinya.
5.    Dalam kaitannya dengan cara kerja JSPs, mereka tidak membutuhkan kompilasi dari para pengembang. Kompilasi ini telah ada untuk kita pada kontainer servlet. Modifikasi JSPs dideteksi secara otomatis. Hal ini secara relatif membuatnya mudah untuk dibangun.

Kelebihan JSP

1.    JSP dapat berjalan pada sembarang platform.
2.    JSP cenderung memiliki performansi yang lebih baik, karena JSP dilakukan kompile terlebih dahulu menjadi servlet yang berupa bytecode.
3.    Didukung bahasa Java yang memilki kemampuan OOP dan tingkat reuseability tinggi.
4.    Dapat menggunakan JavaBean untuk mengenkapsulasi kode-kode java.

Kelemahan JSP


Proses kompile terhadap halaman JSP mengakibatkan client harus menunggu lebih lama pada saat pertama kali di lakukan loading. Hal ini tentu saja menyebabkan kecepatan proses JSP secara menyeluruh berkurang.


0 komentar:

Posting Komentar