• Tidak ada hasil yang ditemukan

Akan memuat kesimpulan dan saran untuk pengembangan sistem lebih

lanjut berdasarkan pada analisa hasil yang diperoleh.

2.1. Database

Database merupakan sekumpulan data yang saling berhubungan yang disimpan bersama-sama untuk melayani satu atau lebih aplikasi secara optimal atau dengan kata lain suatu database merupakan serangkaian file yang secara logik berhubungan sedemikian rupa hingga jangkauan data diperbaiki dan berkelebihan dikurangi.

Konsep database dibuat operasional oleh suatu sistem perangkat lunak yang mengerjakan fungsi penciptaan dan peremajaan file, mencari data dan menghasilkan laporan. Semua data dalam rangkaian file dapat dijangkau oleh program apapun yang bisa menggunakan database.

Database dirancang atas dasar pendekatan aplikatif maupun pendekatan sistem. Pendekatan aplikatif merupakan cara yang tradisional, dimana database dirancang hanya untuk memenuhi satu aplikasi tertentu, sehingga terdapat kemungkinan satu data disiapkan dalam beberapa file berbeda untuk memenuhi aplikasi-aplikasi yang berbeda. Sedangkan database yang dirancang dengan pendekatan sistem, memberikan suatu database yang dapat dipergunakan untuk lebih dari satu aplikasi, dengan mengurangi terjadinya kerangkapan data.

2.2. Sistem Database Terdistribusi

Database terdistribusi (Conoly, 2002) adalah suatu kumpulan data bersama yang saling berelasi secara logis, yang secara fisik tersebar/terdistribusi di seluruh jaringan kumputer.

Dalam sebuah database terdistribusi, database disimpan pada beberapa komputer yang terhubung melalui jaringan komunikasi atau jaringan komputer. Dengan tujuan agar terjadi pertukaran informasi antar komputer dan kerjasama antara komputer yang satu dengan komputer yang lain untuk mencapai suatu fungsi. Salah satu topologi untuk menghubungkan komputer dalan jaringan adalah dengan Ring (LAN). Berikut gambar topologi jaringan LAN:

Gambar 2.1 Topologi Jaringan Ring

Sebuah sistem database terdistribusi berisikan sekumpulan site, di mana tiap-tiap site dapat mengakses database lokal (database pada site itu sendiri) maupun database global (database yang terletak pada site yang berbeda).

Sistem database tersistribusi mempunyai kelebihan dan kekurangan. Berikut merupakan kelebihan useran sistem database terdistribusi:

1. Otonomi lokal : karena data didistribusikan, user dapat mengakses dan bekerja dengan data tersebut sehingga memiliki kontrol lokal.

2. Meningkatkan kinerja : karena setiap site menangani hanya bagian dari DB, CPU dan I/O tidak seberat seperti DB pusat. Data yang dipakai untuk transaksi disimpan dalam beberapa site, sehingga eksekusi transaksi dapat dilakukan secara paralel.

3. Meningkatkan reliability/ availability : jika satu site mengalami crash, dapat membuat beberapa site tidak dapat diakses. Jika data direplikasi ke banyak site, kerusakan hubungan komunikasi tidak menjadikan sistem total tidak dapat dioperasikan.

4. Ekonomis : dari biaya komunikasi, baik membagi aplikasi dan memproses secara lokal di setiap site. Dari biaya komunikasi data, akan lebih murah untuk memelihara sistem komputer dalam satu site dan menyimpan data secara lokal.

5. Expandibility : akan lebih mudah mengakomodasikan ukuran DB yang semakin besar. Ekspansi dapat dilakukan dengan menambah proses dan kekuatan penyimpanan ke jaringan.

6. Shareability : jika sistem informasi tidak terdistribusi, akan sulit untuk berbagi data dan sumber daya. Sistem DB terdistribusi memungkinkan hal ini.

Sedangkan kerugian/kelemahan dari useran sistem database terdistribusi adalah sebagai berikut :

1. Kompleksitas : Masalah DDBS lebih kompleks dibandingkan dengan manajemen database terpusat.

2. Biaya : sistem terdistribusi membutuhkan tambahan hardware (untuk mekanisme komunikasi) sehingga biaya hardware meningkat terutama jika dilakukan replikasi. Jika fasilitas komputer dibuat di banyak site, akan memerlukan banyak orang yang memelihara fasilitas tersebut

3. Kontrol distribusi : distribusi menyebabkan masalah sinkronisasi dan koordinasi.

4. Keamanan : akan mudah mengontrol database yang terpusat karena dalam sistem database terdistribusi, jaringan membutuhkan keamanan tersendiri.

5. Perubahan yang sulit : tidak ada tool atau metodologi untuk membantu user mengubah database terpusat ke database terdistribusi.

Ada beberapa alternatif dasar untuk menyimpan atau menempatkan data, yaitu partisi dan replikasi. Dalam skema partisi, database dibagi ke dalam sejumlah partisi disjoin yang masing-masing ditempatkan di site yang berbeda.

Perancangan replikasi dibedakan atas complete replicated dimana sebuah replika database ditempatkan di masing-masing site, atau partially replicated yaitu sebuah replika dari database disimpan di lebih dari satu site tetapi tidak di semua

site.

2.3. Distributed Database Management System (DDBMS)

DBMS terditribusi adalah (Connoly, 2002) sistem perangkat lunak yang mengijinkan pengolahan database terdistribusi dan membuat transparan terhadap pemakainya. Sebuah DDBMS terdiri atas sebuah logical database yang dibagi kedalam sejumlah fragments. Tiap fragments disimpan pada satu komputer atau lebih di bawah kontrol sebuah DBMS yang terpisah, dimana komputer-komputer tersebut terhubung oleh suatu jaringan komunikasi. Tiap site (tempat) mampu secara mandiri memproses permintaan user yang membutuhkan akses ke data lokal dan mampu memproses data yang tersimpan di komputer-komputer lain dalam jaringan tersebut.

Transparansi pada Sistem Terdistribusi

Merupakan pemisahan dari semantic level tingkat tinggi dari implementasi level rendah. Atau sistem transparansi menyembunyikan rincian implementasi dari user. Sistem database terdistribusi menyediakan beberapa tipe transparansi dalam Distributed DBMS antara lain :

a. Transparansi Distribusi (Distribution Transparency)

User tidak perlu tahu bahwa data didistribusi, user merasakan databsenya sebagai basis data tunggal.

1. Transparansi lokasi (location transparency), merupakan transparansi terhadap perintah yang bebas digunakan pada lokasi data maupun pada sistem dimana operasi berjalan, artinya user tidak perlu tahu pada lokasi mana potongan data tersimpan, akan tetapi user harus tahu bagaimana data di fragmentasi.

2. Transparansi fragmentasi (fragmentation transparency) artinya user dapat melakukan semua akses seakan-akan relasi tidak terfragmentasi (data merupakan satu kesatuan utuh kembali) dengan kata lain user tidak perlu tahu bahwa data di fragmentasi dan user tidak perlu menspesifikasikan nama-nama fragment dan lokasi-lokasi datanya. Fragmentasi data mempunyai pengertian bahwa objek logikal yang diberikan dapat dibagi-bagi menjadi potongan-potongan data (fragment) untuk keperluan penyimpanan fisik.

3. Transparansi replikasi (replication tranparency) artinya user tidak perlu tahu replikasi terhadap fragment-fragment, objek logikal yang diberikan dapat ditampilkan pada level fisik dengan beberapa salinan (replika) yang berbeda dari objek tersimpan yang sama, pada beberapa sisi yang berbeda. Meskipun demikian mungkin sebuah sistem tidak memiliki location

tranparency tetapi memiliki replication tranparency. Sehingga dapat dicatat bahwa transparansi lokasi, fragmentasi dan replikasi secara bersamaan menyebabkan sistem terdistribusi seakan-akan merupakan sistem terpusat dalam pandangan user.

4. Transparansi Pemetaan Lokal (Local Mapping Transparency), user harus menspesifikasikan baik nama-nama fragment maupun lokasi item-item data.

5. Transparansi Penamaan (Naming Transparency), seperti objek database terpusat ataupun database harus memiliki nama unik. Dengan memberikan identifier sebagai bagian dari nama objek.

b. Transparansi Tranksaksi (Transaction Transparency)

Semua transaksi terdistribusi tetap menjaga konsistensi dan integritas database terdistribusi, selain itu DDBMS juga harus memastikan sinkronisasi subtransaksi dengan transaksi lokal tetapi juga subtransaksi-subtransaksi dengan transaksi global

1. Transparansi Concurrency (Concurrency Transparency)

Semua transaksi yang dilaksanakan bersamaan (baik terdistribusi maupun tidak terdistribusi) sama seperti jika transaksi tersebut dieksekusi pada satu waktu dalam urutan serial.

2. Transparansi Kegagalan (Failure Transparency)

Menjamin atomicity dari global transactions yang berarti memastikan bahwa subtransaksi global transaction apakah semua commit atau semua

abort.

c. Transparansi Unjuk Kerja(Performance Transparency)

Sebuah DDBMS harus memiliki unjuk kerja seperti DBMS terpusat, diharapkan sistem tidak mengalamai degradasi/unjuk kerja yang menurun karena sistem memiliki artitektur terdistribusi.

d. Transparansi DBMS(DBMS Transparency)

Menyembunyikan knowledge bahwa lokal DDBMS dapat saja berbeda.

2.4. Replikasi Data

Replikasi (Connoly, 2002) adalah proses menghasilkan dan memproduksi banyak salinan/copy data pada satu atau lebih tempat (site).

Replikasi merupakan mekanisme yang penting dalam mendistribusikan data karena dapat diatur untuk meyediakan akses data bagi user kapanpun dan dimanapun dibutuhkan. data replicator mengijinkan pencipta memperbanyak tabel atau subset tabel dalam hubungan penyebaran yang luas.

Fungsi utama dari data replicator adalah untuk memelihara keseragaman diantara hasil duplikat secara umum, yang satu salinan utama dan berbagai salinan sekunder dan pembaharuan disebarkan dari salinan utama ke salinan sekunder dengan cara yang sesuai yaitu tanpa menggunakan perintah dua antar muka. Penyebaran bisa meningkat, ketika berdasarkan useran variasi (data dikirim dari salinan utama ke salinan sekunder). Alternatif lain seluruh salinan sekunder secara periodik diciptakan kembali dari seluruh salinan utama. Data replicator

melakukan ini secara transparan, tanpa mengubah aplikasi yang mengoperasikan salinan utama.

2.4.1. Update dalam Replikasi

Dalam sistem terdistribusi, replikasi dari suatu database dapat disimpan pada tempat yang berbeda dalam jaringan. Sebelum terhubung, data replicator

akan membuat salinan database yang akan digunakan. Hal tersebut agar mengurangi waktu dalam pengaksesan data. Kejadian tersebut dapat memperbaiki ketersediaan data dalam kasus kegagalan, jika terjadi tubrukan replika, suatu database masih dapat diakses melalui replika yang lain.

Dalam mengimplementasikan replikasi, transaksi individu menyadari bahwa ada replikasi pada database. Sistem mengetahui data mana yang direplikasi dan dimana replikasi itu disimpan. Dengan algoritma replikasi read-one/write-all, ketika transaksi meminta untuk membaca sebuah data, sistem mengambil sebuah data dari replika terdekat, ketika transaksi meminta untuk mengubah data, sistem

mengubah semua data pada semua replika. Bagian sistem bertanggung jawab untuk menerapkan algoritma replikasi yang disebut kendali replika (replica control).

Sistem read-one/write-all mempunyai dua macam sifat update yaitu :

1. Replikasi Synchronous

Pada mekanisme replikasi synchronous menggunakan protokol 2PC (2-phase commit). Salinan data di slave diupdate dengan segera ketika data sumber diupdate. Proses replikasi synchronous dijelaskan pada gambar dibawah ini:

Gambar 2.2 Proses Replikasi Synchronous

Pada gambar di atas, query dieksekusi di master dan slave, dan dicommit dikeduanya sebelum client medapatkan status.

2. Replikasi Asynchronous

Dengan mekanisme ini, database target (salinan data) diupdate setelah database sumber diupdate sehingga terjadi delay beberapa menit atau bahkan beberapa jam untuk mendapatkan konsistensi data. Besarnya delay yang diperlukan bergantung pada beberapa faktor, yaitu seberapa sering replikasi memproses pengambilan update, berapa banyak data yang harus ditransfer ke sistem replikasi, dan berapa cepat jaringan dapat melewatkan data untuk dipindahkan.

Gambar 2.3 Proses Replikasi Asinkron

Gambar di atas mengilustrasikan bagaimana sistem replikasi asinkron memproses query pada server master dan mengembalikan status ke client sebelum query direplikasi pada slave.

2.4.2. Kepemilikan data (data ownership)

Data terdistribusi tidak lepas dari kepemilikan data itu sendiri, yaitu sites

mana yang memiliki hak untuk mengupdate data. Tipe utama dari kepemilikan adalah master/slave, workflow dan update-anywhere.

1. Master/slave

Pada tipe ini, data direplikasi secara asynchronous pada sebuah site

yang disebut site utama (master-site) dan hanya dapat diperbarui/di-update

oleh site tersebut. Pendistribusian data dilakukan dengan menggunakan suatu cara yaitu publish-and-subscribe dimana site utama (sebagai publisher) membuat data tersedia (available) dan Site-site lain (slave) melakukan

subscribe terhadap data yang dimiliki oleh site utama tersebut, yang berarti bahwa site-site lain tersebut hanya menerima read-only copies pada sistem lokal mereka. Tiap site dapat menjadi master site bagi sekumpulan data (data sets) yang tak overlapping tetapi hanya diperbolehkan satu site saja yang dapat memperbarui master copy dari suatu data sets, sehingga konflik dapat dihindari.

2. Workflow

Pada dasarnya tipe ini hampir sama seperti master-salve ownership, metode ini juga menghindari konflik update data yang terjadi pada waktu yang bersamaan, yaitu dengan cara yang lebih dinamis. Pada tipe Workflow ini, sistem mengijinkan hak untuk memperbarui replikasi data berpindah dari satu

site ke site lain. Meskipun demikian pada satu waktu tertentu, hanya boleh satu site saja yang melakukan update data.

3. Update-anywhere

Pada kedua tipe sebelumnya, pada satu waktu yang sama hanya sebuah

site saja yang boleh memperbarui data. Seluruh site yang lain hanya memiliki akses read-only pada replikasinya. Tetapi pada tipe ini proses update bisa dilakukan di beberapa site, metode ini menciptakan lingkungan yang peer-to-peer dimana banyak site mempunyai hak yang sama untuk memperbarui replikasi data. Pada metode ini juga mengijinkan site-site lokal memiliki fungsi otonomi bahkan ketika site lain tidak dapat diakses.

2.4.3. Keuntungan replikasi:

1. Performa

Kecepatan akses menjadi lebih baik dibanding dengan database terpusat karena data diletakan dekat dengan user dan paralel DDBMS juga dimungkinkan. Unjuk kerja juga akan meningkat karena tiap site hanya menangani sebagian dari seluruh database, maka tidak mungkin CPU dan alat I/O memroses data yang sama.

2. Perbedaan Geografis

Replikasi dapat menjadi sebuah solusi untuk menyediakan data ke site-site

yang terpisah secara geografis.

3. Redudansi dan Backup

Menggunakan replikasi berarti membackup data secara konstan, dan jika database utama mengalami kegagalan maka masih ada copy dari database yang siap direstore.

4. Mesin Penyimpan dan Optimasi Index

Index akan sangat bermanfaat untuk mengakses data yang memerlukan multipel index pada sebuah tabel tunggal. Menyebarkan index melalui dua database yang berbeda dan mengirimkan query ke mesin penyedia dapat mengurangi ukuran index dan meningkatkan unjuk kerja.

5. Pertumbuhan secara modular.

Dalam lingkungan database terditribusi, lebih mudah menangani perluasan/ekspansi. Site baru dapat ditambahkan ke jaringan tanpa mengganggu operasional dari site-site lain.

2.4.4. Kelemahan

Replikasi dapat bermanfaat dan dibutuhkan dalam beberapa situasi, namun juga tidak dapat menyelesaikan banyak masalah. Sebagai contoh :

1. Menggunakan replikasi sebagai backup untuk mengembalikan data update dan delete tidak bekerja. Karena sebuah server replikasi mengeksekusi beberapa

query dari master ke slave dengan delay, sehingga slave mencari record update atau delete pada master ternyata tidak berhasil.

2. Replikasi Asyncronous, tidak bermanfaat jika data yang dibutuhkan slave

adalah real time.

2.5. MySQL 5.0

2.5.1. Privelege

Adalah hak untuk melakukan operasi tertentu terhadap server. Previlege merupakan cara pengamanan yang mengacu pada kewenangan user dalam

database. Ini berarti pemberian privelege harus disesuaikan dengan pekerjaan

user.

Query untuk membuat privelege.

GRANT priv_tipeON {*.* | * | db_name.* | table_name} TO 'user_name'@'host_name' IDENTIFIED

Query untuk menghapus privelege untuk sebuah user account:

REVOKE priv_tipeON {*.* | * | db_name.* | table_name} FROM 'user_name'@'host_name';

Query untuk melihat priveleges yang dimiliki user:

SHOW GRANTS FOR 'user_name'@'host_name';

Query untuk melihat tabel privelege user secara langsung:

SELECT * FROM mysql.user WHERE User = ''user_name' AND Host = 'host_name' \G

2.5.2. Membuat User

Perintah yang digunakan untuk menambah user menggunakan GRANT

atau CREATE USER. GRANT untuk membuat user sekaligus dengan previlage, sedangkan CREATE USER untuk membuat user tanpa previlege (username dan

host) user disimpan pada tabel mysql.user.

GRANT priv_tipeON {*.* | * | db_name.* | table_name} TO username IDENTIFIED BY

'my_password';

Atau :

CREATE USER 'user_name'@'host_name' IDENTIFIED BY 'your_password';

Menghapus user account:

DROP USER command;

DELETE FROM mysql.user WHERE user='some_user' AND Host='%';

Untuk memastikan perubahan yang dilakukan menggunakan perintah Flush:

FLUSH PRIVILEGES;

Membuat database

CREATE DATABASE <database_name>;

2.5.3. Replikasi pada MySQL

Mekanisme replikasi yang didukung oleh MySQL adalah satu arah, yaitu replikasi asyncronous (asingkron). Sedangkan replikasi sinkron pada MySQL dikenal dengan clustering.

Sebuah mesin bertindak sebagai master server dan satu atau lebih mesin bertindak sebagai slave server. Master menyimpan setiap perubahan yang terjadi ke dalam databes dengan file binary log. File binary log merekam semua perubahan (UPDATE, DELETE, INSERT...) yang dilakukan oleh database master

sejak pertama kali replikasi dikonfigurasi dan dimulai. Master juga membuat dan memaintain sebuah indek file untuk menjaga track dari rotasi binary log yang dibuat. Slave server membaca binary log dan melakukan perubahan terhadap data.

Replikasi pada MySQL menggunakan tiga thread. Thread satu di dalam

slave, slave membuat sebuah thread yang disebut I/O thread untuk menghubungkan dengan master dan meminta master untuk mengirimkan record

yang diupdate dalam binary log. Sedangkan master membuat sebuah thread untuk mengirimkan binary log ke slave. Thread ini dapat diidentifikasikan sebagai

Binlog Dump yang dapat dilihat dari SHOW PROCESSTLIST pada master.

Thread I/O pada slave membaca update yang masterBinlog Dump kirimkan dan mengkopi ke lokal file yang diketahui sebagai relay logs di dalam direktori

slave/data. Thread ke tiga adalah SQl thread yang dibuat slave untuk membaca

relay logs dan melakukan update.

2.5.4. Replikasi Master to Master

Ketika sebuah multi-master replikasi dibangun, untuk mencegah tubrukan primary key digunakan AUTO_INCREMENT untuk insert rows. Variabel yang digunakan oleh kolom ini adalah auto_increment_increment sebagai nilai dari

auto_increment dan auto_increment_offset sebagai start point untuk kolom

auto_increment.

Misalkan pada database A diset Auto_increment_increment = 2 dan Auto_increment_offset

= 1, sedangkan pada database B Auto_increment_increment = 2 dan Auto_increment_offset =

2. jika dilakukan Insert tabel x yang berada pada database A:

Insert into x values (‘null’, ‘aaa’), (‘null’, ‘bbb’), (‘null’, ‘ccc’);

Hasil dari query diatas adalah :

ID Nama

1 aaa

3 bbb

5 ccc

Dan tambah tabel x pada database B sebagai berikut :

Insert into x values (‘null’, ‘xxx’), (‘null’, ‘yyy’), (‘null’, ‘zzz’);

Select * from x;

Hasil dari query diatas adalah :

ID Nama

2 xxx

4 yyy

2.6. Web

World Wide Web (WWW) merupakan Web yang saling terhubung pada jaringan. Web menggunakan bahasa HTML (HyperText Markup Language) dan menggunakan protokol HTTP (HyperText Transfer Protokol). Dan saat ini sudah banyak berkembang skrip untuk mendukung bahasa HTML, seperti PHP, JSP, ASP dan juga applet (Java).

Arsitektur aplikasi web ditunjukkan pada gambar 1.1, sebuah web server

menerima permintaan dari client terhadap halaman web, kemudian menyampaikan permintaan tersebut ke middleware yang dapat menerjemahkan kode tertentu, menjalankan kode tersebut dan berinteraksi dengan basidata. Hasil dari

middleware dikembalikan ke browser client. Contoh web server : Apache, IIS, Xitami. Contoh middleware : PHP, JSP, ASP, Perl. Sedangkan yang termasuk

web browser adalah Mozila, IE, Netscape, Opera.

2.7. JSP

JSP adalah suatu teknologi web berbasis bahasa pemrograman java dan berjalan di platform java, serta merupakan bagian teknologi J2EE (Java 2 Enterprise Edition). JSP sangat sesuai dan tangguh untuk menangani presentasi di web. Sedangkan J2EE merupakan platform java untuk pengembangan sistem aplikasi enterprise dengan dukungan API (Aplication Programing Interface) yang lengkap dan portabilitas serta memberikan sarana untuk membuat suatu aplikasi yang memisahkan antara bussines logic (sistem), presentasi dan data. JSP memerlukan JVM (Java Virtual Machine) supaya dapat berjalan, yang berarti mengisyaratkan harus menginstal java di server dimana jsp dapat dijalankan. Selain JVM, JSP juga memerlukan server yang disebut Web Container.

Jika dilihat dari asal-usulnya, JSP merupakan pengembangan dari Servlet. Servlet adalah teknologi java yang memungkinkan pembuatan halaman web yang bersifat dinamis dan diproses pada sisi server. Pada saat diproses di sisi server, file JSP sebenarnya dikompilasi menjadi servlet yang merupakan program java yang berjalan di server. Perlu diketahui bahwa servlet merupakan teknologi java untuk web sebelum JSP dan merupakan basis pengembangan JSP.

2.7.1 Arsitektur JSP

User yang ingin mengakses halaman web mula-mula mengirimkan permintaan halaman web melalui protokol HTTP dalam bentuk JSP (file 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 didalamnya melakukan kompilasi) dan membentuk kode HTML. Selanjutnya kode HTML disampaikan oleh web server ke client yang memintanya. Kode HTML ini selanjutnya diproses oleh browser sehingga user bisa memperoleh informasi dari halaman web yang dikehendaki. Perlu diketahui bahwa pengompilasian kode JSP hanya dilakukan sekali saja, yaitu pada pemanggilan dokumen pertama kali. Oleh karena itu user yang memanggil dokumen yang baru saja dibuat atau diperbarui akan merasakan bahwa tanggapan terhadap permintaan halaman web cukup lama. Untuk menghindari keadaan seperti ini, pengembang dapat memanggil terlebih dahulu dokumen tersebut setelah dilakukan perubahan. Detail pemrosesan JSP servlet engine adalah sebagai berikut :

1. Melakukan pemilahan (parsing) kode JSP 2. Membangkitkan kode sumber servlet

3. Mengompilasi kode sumber servlet menjadi sebuah kelas. 4. Membuat instantservlet.

Memberikan keluaran servlet ke web server.

2.7.2 Elemen-elemen JSP

JSP merupakan bahasa pemrograman yang bersifat embedded pada kode HTML maupun WML, namun juga dapat berdiri sendiri dimana sintaks JSP diatur sesuai dengan spesifikasi JSP yang dapat di dowload dari www.jcp.org . JSP memiliki bermacam-macam elemen yang dapat digunakan dalam suatu halaman JSP. Dalam JSP terdapat tiga komponen utama yaitu :

a. Direktif

Direktif adalah media yang digunakan JSP untuk mengirimkan pesan ke JSP container. Direktif berguna untuk melakukan setting nilai global

seperti deklarasi class atau method. Setting yang dilakukan oleh direktif berlaku pada seluruh halaman (hanya halaman itu saja). Sebagai gambaran, pada source code java sering kita lihat baris berikut :

import java.io.*;

Dokumen terkait