Tutorial Akses DB dengan JSP


Kita akan coba belajar membuat sebuah halaman JSP sederhana dengan Netbeans 6.1 yang dapat melakukan query ke database Java DB (Derby). Paket yang harus disiapkan pada Netbeans 6.1 tentu saja paket J2EE dan Glassfish. Dalam glassfish sudah tersedia paket Java DB yang langsung dapat kita gunakan. Saya sendiri menggunakan Glassfish V2UR2. Untuk memulai belajar ini, pastikan bahwa platform Server di Netbean Anda sudah tercatat Glassfish dengan cara melihat dari menu Tools > Servers. Jika sudah tercatat, kita akan siapkan terlebih dahulu sebuah database di Derby. Katakanlah database kita ini akan mencatat data mahasiswa pada sebuah tabel dengan nama siswa. Klik jendela Services pada Netbeans, sehingga nampak bagi Anda item Databases. Silahkan Anda ekpan dengan cara klik tombol + pada item Databases. Klik kanan item Java DB, lalu pilih Start Server. Setelah database Derby jalan, klik kanan kembali pada item Java DB, lalu pilih Create Database… Ketiklah nama database, misal: wordpress, lalu ketik juga username dan password untuk database tersebut, setelah itu klik tombol OK. Anda akan mendapatkan sebuah item koneksi jdbc ke database Anda:

jdbc:derby://localhost:1527/wordpress

Klik kanan pada item tersebut, dan pilih Connect…. Setelah Anda masuk ke database Anda, pada item Tables, klik kanan dan pilih Create Table… Ketik Siswa pada item Table Name:, kemudian masukkan definisi 4 field untuk tabel tersebut :

  • nim  char(5) primary key
  • nama varchar(100) not null
  • email varchar(100)
  • tgllahir date

Klik tombol OK untuk membuat tabel tersebut. Jika Anda ekspan item Tables, item SISWA akan tersedia. Silahkan klik kanan item SISWA, dan pilih View Data. Akan muncul sebuah window SQL Command baru. Cobalah tambahkan 4 data baru ke tabel SISWA dengan memberikan perintah berikut pada window SQL Command :

insert into SISWA values ('11111', 'GatotKaca', 'gatotkaca@gmail.com', '1989-01-20');
insert into SISWA values ('11231', 'Werkudoro', 'werkudoro@wayang.com', '1985-10-14');
insert into SISWA values ('42358', 'Arjuna', 'arjuna@gmail.com', '1987-03-11');
insert into SISWA values ('76713', 'Buto Ijo', 'buto@wayang.com', '1989-06-15');

Jalankan perintah Anda tersebut dengan cara klik tombol Run SQL (Ctrl+Shift+E). Anda dapat melihat data yang tersimpan dengan memberikan perintah

SELECT * FROM SISWA;

Untuk memulai pembuatan sebuah aplikasi J2EE di Netbeans, buatlah dahulu sebuah proyek baru (File > New Project). Kemudian pada dialog new project pilih Categories: Web dan pilih Projects: Web Application, kemudian klik tombol Next. Ketiklah nama project Anda, lalu klik Next. Pilih GlassFish V2 sebagai server Anda, dan gunakan nilai default untuk item lain. Klik tombol Next. Saat ini kita belum menggunakan Framework, sehingga dapat kita abaikan lalu klik tombol Finish.

Pada project yang baru, Anda akan mendapatkan sebuah file baru, yaitu index.jsp, yang otomatis sudah disiapkan kepada Anda. Kita akan menggunakan satu file ini saja untuk mencoba melakukan query ke database kita. Sebelum kita lanjutkan, terlebih dahulu kita perlu mensetup JDBC Resource untuk projek kita ini. Dengan konfigurasi JDBC Resource ini kita dapat menggunakan sebuah nama objek JNDI sebagai DataSource pada setiap JSTL SQL yang akan kita gunakan nanti. Untuk mensetup JDBC Resource ini, lakukan dengan cara sebagai berikut:

  • klik kanan pada item nama project Anda pada jendela Projects.
  • Dari menu yang ditampilkan, pilih menu New > Others, kemudian pilihlah GlassFish sebagai categories-nya dan JDBC Resource sebagai File Types. Lalu klik Next.
  • Pilih item Create New JDBC Connection Pool. Isilah jdbc/myWordpress pada item JNDI Name, lalu klik tombol Next.
  • Klik Next pada tahapan pendefinisian Properties.
  • Pada tahap Choose Database Connection, ketiklah connWordpressPool pada item JDBC Connection Pool Name. Kemudian pilih “jdbc:derby://localhost:1527/wordpress” pada item Extract from Existing Connection. Klik tombol Next.
  • Klik Next kembali untuk menerima nilai-nilai dari definisi JDBC wordpress kita.
  • Klik Next sekali lagi, kita terima nilai baku untuk setiap item properti, lalu klik Finish.

Anda dapat melihat deklarasi Connection Pool yang baru kita buat tadi dengan membuka file sun-resources.xml pada folder Server  Resources. Selanjutnya, kita akan mendefinisikan sebuah rujukan (references) ke definisi JDBC Connection Pool dengan cara:

  • buka file web.xml dalam folder Web Pages > WEB-INF dari jendela Projects Anda.
  • dari tampilan web.xml, klik bagian References, lalu klik tombol Add.. pada bagian Resource References.
  • Isilah dengan jdbc/myWordpress pada item Resource Name, kemudian pada item Description isilah dengan jdbc:derby://localhost:1527/wordpress.
  • klik tombol OK.
  • klik tombol Save.

Kembali ke file index.jsp kita, untuk memulai menggunakan JSTL tag SQL kita harus memasukkan definisi tag berikut di baris awal pada index.jsp:

<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt" %>
<%@ taglib prefix="sql" uri="http://java.sun.com/jstl/sql_rt" %>

Tuliskan sebuah contoh pemakaian sql:query di bawah ini untuk menampilkan seluruh data dari tabel SISWA. Letakkan kode program berikut di antara elemen <body></body> :

<h2>Data Siswa</h2>

<sql:query var="siswas" dataSource="jdbc/myWordpress">
SELECT nim, nama, email, tgllahir FROM SISWA
</sql:query>

<table border="1">
<thead><tr><td>NIM</td><td>Nama</td><td>email</td><td>Tgl Lahir</td></tr></thead>
<tbody>
<c:forEach var="siswa" items="${siswas.rows}">
<tr>
<td>${siswa.nim}</td>
<td>${siswa.nama}</td>
<td>${siswa.email}</td>
<td>${siswa.tgllahir}</td>
</tr>
</c:forEach>
</tbody>
</table>

Setelah itu, cobalah Anda jalankan dengan cara menekan tombol F6 pada Netbean Anda. Netbean Anda akan menjalankan terlebih dahulu GlassFish jika ternyata belum jalan sebelumnya. Setelah GlassFish dapat berjalan dengan baik, Netbeans akan melakukan deploy otomatis, baik untuk library jar derby jdbc driver dan juga file-file descriptor aplikasi Anda ke folder generated/xml pada domains/domain1 GlassFish. Jika tidak ada masalah, maka pada browser Anda akan muncul tampilan data Anda.

Untuk melengkapi pembelajaran kita tentang akses DB dengan JSP ini, saya sudah lengkapi file index.jsp dengan operasi-operasi manipulasi data. Semuanya menggunakan JSTL sql dan core command. Sejujurnya terasa lebih mudah menggunakan JSTL ini untuk pemrograman web dengan JSP. Tampilan selengkapkan dapat dilihat pada  gambar di bawah ini.

8 thoughts on “Tutorial Akses DB dengan JSP

  1. mbak/mas hehehe… wordpressnya pasangi iklan biar dapat duit aku liat di search engine blog saudara lumayan teratas , ni link program bisnis yang menyediakan iklan dan kita dapat bayaran
    http://www.kumpulblogger.com sekarang wordpress juga bisa bergabung , dulu hanya blogger

  2. asslamualaikum wr….
    mas salam kenal ya……
    mass saya baru bljr Java….cuman masi bingung….mass kalo ada contoh latihan kirimin ke email saya ya…sorry ngerepotin mas ne..

  3. Assalamua’laikum…

    terima kasih, masukan yg baik…
    boleh bantuin sy? saya butuhkan pertolongan kalian untuk siapkan projek akhir saya.
    itulah pra-syarat untuk sy tamatkan pengajian saya.

    mohon bantuan…
    boleh YM saya atas nama id rodhiah_siti..

  4. Bos.. saya udah ikutin semua yg diatas.. tapi timbulnya error kaya gini:

    HTTP Status 500 –

    type Exception report

    message

    descriptionThe server encountered an internal error () that prevented it from fulfilling this request.

    exception

    javax.servlet.ServletException: javax.servlet.jsp.JspException: Unable to get connection, DataSource invalid: “java.sql.SQLException: No suitable driver found for jdbc/myWordPress ”

    root cause

    javax.servlet.jsp.JspException: Unable to get connection, DataSource invalid: “java.sql.SQLException: No suitable driver found for jdbc/myWordPress”

    note The full stack traces of the exception and its root causes are available in the Sun GlassFish Enterprise Server v2.1 logs.

    Apa tuh salahnya bos..?

Komentar ditutup.