Pengertian Java Server Pages
JSP adalah suatu teknologi web berbasis bahasa pemrograman
Java dan berjalan di Platform Java, serta merupakan bagian teknologi J2EE (Java
2 Enterprise Edition). Teknologi JSP menyediakan cara yang lebih mudah dan
cepat untuk membuat halaman-halaman web yang menampilkan isi secara dinamik.
Teknologi JSP didesain untuk mempermudah dan mempercepat pembuatan aplikasi
berbasis web yang bekerja dengan berbagai macam web server.
A.
Dasar Dasar Java Server Pages
1. Directive
Directive adalah sekumpulan tag yang menentukan bagaimana
dokumen yang berisi direktif ini akan diproses. Directive digunakan JSP untuk
mengirimkan “pesan” ke JSP container. Directive berguna untuk melakukan setting
nilai global seperti deklarasi class atau method. Setting yang dilakukan oleh
directive berlaku pada seluruh halaman (hanya halaman itu saja). Secara umum
sintaks directive adalah sebagai berikut :
<%@ nama_directive atribut1=”nilai1”
atribut2=”nilai2” . .
%>
Directive pada JSP terdiri atas tiga dengan fungsi yang
berbeda-beda :
Ø Page :
digunakan untuk mendefinisikan atribut-atribut yang terdapat pada halaman JSP.
Atribut-atribut ini misalnya atribut language, import, info, errorpage dan
lain-lain. Cara penulisannya dengan menggunakan tanda @ setelah tag JSP (<%)
diikuti kata page dan atributnya. Contoh : <%@ page language=”java”
%>
Ø Include :
digunakan untuk menyisipkan suatu berkas atau mengimpor suatu kelas. Cara
penulisannya dengan menggunakan tanda @ setelah tag JSP (<%) diikuti kata
include dan atributnya.
Contoh : <%@ include file="/header.html" %>
Ø Taglib :
digunakan untuk mendefinisikan tag-tag yang dibuat sendiri oleh pemrogram. Cara
penulisannya dengan menggunakan tanda @ setelah tag JSP (<%) diikuti kata
taglib dan atributnya.
Contoh: <%@ taglib uri = "http://jakarta.apache.org/taglibs/application1.0"prefix="app"
%>
2. Elemen
Scripting
Elemen scripting digunakan untuk menggabungkan
instruksi-instruksi pemrograman Java ke dalam halaman web. Instruksi tersebut
akan dieksekusi setiap kali halaman diproses sebagai permintaan. Ada tiga jenis
scripting yaitu :
deklarasi,
scriplet dan ekspresi.
1. Deklarasi
JSP menyediakan tag yang secara khusus ditujukan untuk
melakukan pendeklarasian variable yang berlevel halaman. Variabel seperti ini
akan dikenali di sepanjang halaman. Tag yang dimaksud dinamakan tag deklarasi.
Tag ini berbentuk sebagai berikut :
<%!.....%>
Contoh 14.1. Penggunaan tag deklarasi.
<body>
<%!
String baju;
int harga = 60000;
%>
Setelah Deklarasi : <br>
<%
baju = "John Mc Roe";
out.println("Merek baju :
" + baju + "<BR>");
out.println("Harga baju :
" + harga + "<BR>");
%>
</body>
2. Scriplet
Scriplet merupakan sekumpulan kode program Java uang
dijalankan setiap kali halaman JSP dipanggil. Cara penulisannya adalah dengan
memberikan tag <% kode %>.
Contoh 14.2. Penggunaan tag scriplet.
<body>
<%
out.print("Ini keluar dari
tag scriplet");
out.print("Coba saja kalau
tidak percaya”);
%>
</body>
3. Ekspresi
Ekspresi adalah satu baris perintah yang digunakan untuk
mengeksekusi perintah sekaligus menampilkan dalam halaman web. Eskpresi ini
mirip seperti ketika kita memanggil fungsi/method pada Java. Cara penulisannya
adalah dengan menggunakan tag <%= kode %>
Contoh 14.3. Penggunaan tag ekspresi.
<%! //Deklarasi variabel
int jmlUser=3;
//Deklarasi method
public String Hello(String nama) {
return "Hallo " + nama;
}
%>
<HTML>
<HEAD>
<TITLE>Contoh tag ekspresi
JSP</TITLE>
</HEAD>
<BODY>
<H3>
<% for (int i=1; i<=jmlUser; i++) {
//Contoh scriplets
%>
<i><%=Hello("User "+ i +
"!")%> </i> <br>
<%}%>
</H3>
</BODY>
</HTML>
3. Komentar
Komentar digunakan untuk memberikan keterangan pada
kode-kode JSP. Ada tiga jenis komentar yang dapat disisipkan dalam halaman JSP,
yaitu komentar content, komentar JSP dan komentar bahasa script. Komentar
content ditulis dengan tag <!-- komentar -->. Komentar model ini tidak
menampilkan output ke browser. Tapi tertulis pada source HTML. Komentar JSP
merupakan tipe komentar yang hanya tampak pada kode program JSP. Ketika kode
JSP dikompilasi, komentar tersebut akan dilewati dan tidak ikut dikompilasi.
Komentar ini dituliskan dengan cara <%-- komentar
-->.
Komentar bahasa script sama dengan yang digunakan pada
Java (lihat kembali bab 8). Komentar ini disisipkan pada scriplet. Pada contoh
14.3 kita telah menggunakan salah satu cara komentar bahasa script. Perhatikan
pada baris yang diawali dengan tanda //.
Cara yang lain adalah dengan tanda /* komentar */.
4. Action
Action mendukung beberapa aksi yang berbeda-beda. Hampir
mirip dengan scripting, action akan dieksekusi setiap kali ada permintaan.
Fungsi penting dari action adalah memungkinkan terjadinya transfer kontrol
antar halaman, mendukung penggunaan applet Java dan memungkinkan JSP
terintegrasi dengan komponen JavaBeans.
JSP mengenal tag action standar dan custom tag. Tag
standar adalah tag yang didefinisikan dalam spesifikasi JSP, sedangkan custom
tag adalah tag baru yang dapat didefinisikan sendiri. Pada bagian ini hanya
dibahas mengenai tag action standar. Tag action standar JSP adalah sebagai
berikut :
<jsp:useBean>
<jsp:setProperty>
<jsp:getProperty>
<jsp:param>
<jsp:include>
<jsp:forward>
<jsp:plugin>
B. Mekanisme
Kerja Aplikasi Web Berbasis JSP
Secara
umum aplikasi web berbasis JSP akan mengikuti mekanisme. Halaman-halaman web
yang mengandung kode JSP akan dikirim ke web server. Kemudian web server akan
memanggil perangkat lunak penerjemah JSP. Oleh penerjemah ini kode JSP akan
dirubah menjadi file sumber berekstensi .Java. file ini akan dikompilasi untuk
menghasilkan class. Hasil dari kompilasi ini akan dijalankan kemudian hasilnya
akan disampaikan kepada web server untuk diteruskan pada browser client.
C.
Web Server Yang Digunakan
Apache Tomcat merupakan implementasi perangkat lunak
open source teknologi Java Servlet dan JSP. Spesifikasi Java
Servlet dan JSP dikembangkan di bawah Java Community Process .
D.
Cara Instalasi.
Ø
Double click di program installer apache tomcatnya -> Next
Ø
Click I Agree untuk memulai instalasi apache
tomcat
Ø
Type of Instalnya : Custom dan pilih
option-optionnya seperti gambar dibawah ini -> Next
Ø
Isi username dan Passwordnya
Ø
Pemilihan JDK, saya menggunakan JDK7
Ø
Menyimpan program apache tomcat -> Install
Ø
Mengcek apakah instalasi apache tomcat sukses
atau tidak, lakukan perintah berikut :
localhost:8080
localhost:8080
E.
Komponen Yang Diperlukan Untuk Menjalankan Program
-
MySQL server untuk mengolah database, pada
program ini saya menggunakan phpMyAdmin. Selain PHPMyAdmin
bisa juga menggunakan Navicat ataupun Microsoft
Access.
-
Apache
Tomcat sebagai web server
pendukung jalannya pemrograman JSP.
-
Notepad++ atau Adobe Dreamweaver digunakan
untuk mengolah source code JSP.
-
Browser internet, terdapat berbagai macam browser internet
yang dapat digunakan seperti Mozilla FireFox, Google Chrome, Opera, Safari,
Flock dan masih banyak yang lainnya.
F. Cara Menjalankan
Program
- Instalah MySQL Servernya terlebih dahulu. Untuk hal ini saya menggunakan software XAMPP 1.6.3.
- Kemudian instal apache Tomcat.
- Buat Source Codenya di Notepad++ ataupun Adobe Dreamweaver. Simpan dengan format .jsp
- Simpan file-file .jsp pada folder baru yang dibuat di dalam lokasi folder Tomcat/Webapps/....
- Cara melihat hasil source code :
·
aktifkan apache dan MySql
pada XAMPP Control Panel
·
aktifkan
startup.bat yang ada pada folder Tomcat / bin
·
buka
web browser ketik : localhost:8080/nama_folder/file.jsp
·
tampillah
hasil coding yang kita buat tadi
A.
Keamanan
Web
Web termasuk
layanan internet yang paling rentan terhadap ancaman dan pelanggaran. Ada
beberapa cara yang bisa dilakukan oleh pihak yang tidak bertanggung jawab
terhadap suatu situs, antara lain: Pemanfaatan bug sistem. Para penyerang
menggunakan bug (kesalahan) yang dikandung oleh sistem operasi, web server,
bahasa pemrograman web, atau kode-kode lain yang terinstal di komputer server.
Jika ini berhasil ditembus, maka penyerang dapat mengambil alih sistem secara
keseluruhan. Pemanfaatan bug pada aplikasi client. Kadang-kadang kita tidak
terlalu memperhatikan bug pada aplikasi client, misalnya adanya fitur berbahaya
pada web browser yang dapat dijadikan batu loncatan oleh para penyerang.
Pengaksesan tidak sah. Cara ini dilakukan dengan mendapatkan hak akses (user
name dan password) secara tidak sah. Dengan menggunakan perangkat lunak
tertentu, seperti password cracker, penyerang berusaha mengintip apa yang
dilakukan pengguna saat login pada aplikasi web. Setelah memperoleh hak akses
tersebut, mereka menggunakan untuk mengakses dan mengganggu system secara tidak
sah.
Penyadapan
transmisi informasi (eavesdropping). Informasi di internet seperti mobil yang
berlalu lalang di jalan-jalan. Teknik ini termasuk tingkat tinggi. Dilakukan
dengan cara mencegat dan menyadap informasi yang ditransmisikan antara web
server dan web browser. Biasanya yang dituju adalah data-data rahasia seperti
password, nomor account, nomor kartu kredit, dan rekaman transaksi online.
Penyerangan
dengan Denial of Service (DOS). Bentuk penyerangan ini lebih mengarah pada
lingkungan jaringan bukan pada system. Serangan ini ditujukan untuk melumpuhkan
suatu system dengan cara membanjiri jaringan dengan trafik yang sangat tinggi
dan terus menerus melebihi kapasitas yang didukung. Hal ini mengakibatkan system
jaringan berhenti bekerja dan tidak dapat melayani
permintaan pengguna.
Secara umum tidak ada perangkat lunak yang seratus persen
menjamin bebas dari gangguan keamanan. Hal ini karena celah-celah keamanan
selalu muncul di sana sini yang memungkinkan penyerangan. Namun ada beberapa
langkah yang dapat digunakan untuk mengurangi resiko terserang gangguan, antara
lain: Menjalankan server secara aman, misalnya dengan tidak memberikan
kesempatan pada pengguna untuk mengakses melalu shell, membuat fasilitas
perekam kesalahan (log) dari web server.
Menerapkan permissions atau hak akses pada direktori dan
file secara ketat (buka Bab 4 untuk mempelajari lagi permissions). Permissions
ini juga harus diterapkan pada file-file konfigurasi web server. Menuliskan program
aplikasi web secara aman. Sering kali kesalahan yang tidak disengaja pada
pembuatan aplikasi web menjadikan aplikasi menjadi tidak aman. Ada baiknya
aplikasi diperiksa dan diuji berulangkali untuk memastikan celah keamanannya
sangat minimal. Mencegah dan memproteksi informasi dengan cara melakukan
enkripsi (penyandian) agar tidak dapat dibaca oleh penyadap. Mengontrol akses
ke web server. Cara ini dilakukan untuk melindungi data-data internal yang
tidak bisa diakses dari luar. Beberapa cara dapat dilakukan seperti membatasi
akses berdasarkan alamat IP atau domain, membatasi pengguna berdasarkan
kategori tertentu, dan lain-lain.
Contoh
: