JDBC (1) : Pengantar

Oleh : Reza Ervani

Referensi :

  1. Tutorials Point – JDBC Introduction|
  2. Vogella – MySQL and JDBC – Lars Vogel
  3. Eclipse & JDBC – Russell Bateman

بسم الله الرحمن الرحيم

Apa itu JDBC ?

JDBC adalah kependekan dari Java Database Connectivity, yakni API Java standar untuk konektivitas database-independent antara bahasa pemrogramman Java dengan beragam database.

Library JDBC menyertakan API untuk setiap task yang umumnya berhubungan dengan penggunaan database berikut :

  • Membuat koneksi ke sebuah database
  • Membuat statement SQL atau MySQL
  • Mengeksekusi query SQL atau MySQL di dalam database
  • Menampilkan dan memodifikasi record yang dihasilkan

Secara fundamental, JDBC adalah suatu spesifikasi yang menyediakan serangkaian antarmuka lengkap yang memperkenankan akses portabel ke database yang ada. Java dapat digunakan untuk menulis beragam tipe executable, seperti :

  • Apikasi Java
  • Applet Java
  • Java Servlets
  • Java ServerPages (JSPs)
  • Enterprise JavaBeans (EJBs)

Semua executable yang berbeda tersebut dapat menggunakan driver JDBC untuk mengakses database dan menyimpan data.

JDBC menyediakan kemampuan yang serupa dengan ODBC, memperkenakan program-program Java berisi kode database-independent.

Arsitektur JDBC

API JDBC mendukung baik model pemrosesan dua tier maupun tiga tier untuk akses databse, tetapi secara umum arsitektur JDBC terdiri dari dua layer :

  • JDBC API: Menyediakan manajer koneksi aplikasi ke JDBC
  • JDBC Driver API: Mendukung Koneksi JDBC Manager-to-Driver

API JDBC menggunakan suatu manajer driver dan driver database-specifik untuk menyediakan konektivitas transparan ke beragam database.

Manajer driver JDBC memastikan bahwa driver yang benar digunakan untuk mengakses masing-masing sumber data. Manajer driver memiliki kemampuan untuk mendukung driver-driver terkait ke banyak jenis database.

Diagram berikut menunjukkan lokasi dari manajer driver terkait driver JDBC dan aplikasi Java.

jdbc-architecture

Komponen-komponen Umum JDBC

API JDBC menyediakan class dan antarmuka berikut ini :

  • DriverManager: Class ini mengatur daftar driver-driver database. Koneksi yang tepat meminta dari aplikasi Java driver database yang sesuai menggunakan subprotokol komunkasi. Driver awal yang mengenali suatu subprotokol tertentu  dibawah JDBC akan digunakan untuk membangun sebuah koneksi database.
  • Driver: Antarmuka ini menangani komunikasi dengan server database. Kita akan berinteraksi langsung dengan objek Driver sangat jarang. Alih-alih menggunakan objek ini, kita akan menggunakan objek DriverManager, yang mengatur objek dengan tipe ini. Dia juga merupakan abstrak detail yang berhubungan dengan pekerjaan dengan objek Driver.
  • Connection : Antar muka ini berama dengan dengan seluruh metode untuk menghubungi database. Objek koneksi mewakili konteks komunikasi, yakni seluruh komunikasi dengan database dilakukan hanya lewat objek koneksi.
  • Statement : Kita menggunakan objek yang dibuat dari antarmuka ini untuk melakukan submit statement SQL ke database. Beberapa antarmuka menerima parameter sebagai tambahan untuk mengeksekusi prosedur penyimpanan.
  • ResultSet: Objek ini memegang data yang diterima dari database setelah kita mengeksekusi query SQL menggunakan objek Statement. Dia bertindak sebagai iterator yang memperkenankan kita memindahkan data-data yang ada.
  • SQLException: Class ini menangnani error-error dalam aplikasi database.

Paket JDBC 4.x

java.sql dan javax.sql adalah paket utama untuk JDBC 4.2. Ini adalah versi JDBC terkini saat tutorial ini ditulis. Dia menawarkan class-class utama untuk berinteraksi dengan sumber data kita.

Beberapa fitur baru yang ada dalam paket ini diantaranya :

  • Pemuatan driver database otomatis
  • Pengembangan Exception handling
  • Penambahan fungsionalitas BLOB/CLOB
  • Penambahan antarmuka Koneksi dan Statement
  • Dukungan National character set
  • Akses SQL ROWID
  • Dukungan tipe data XML SQL 2003
  • Anotasi

Bersambung insya Allah (reza@rumahilmu.or.id)

About Reza Ervani 426 Articles
Adalah pendiri programming.rezaervani.com -

Be the first to comment

Leave a Reply

Your email address will not be published.


*


This site uses Akismet to reduce spam. Learn how your comment data is processed.