Oleh : Reza Ervani
Referensi :
- Tutorials Point – JDBC Introduction|
- Vogella – MySQL and JDBC – Lars Vogel
- Eclipse & JDBC – Russell Bateman
بسم الله الرحمن الرحيم
Apa itu Driver JDBC ?
Driver JDBC mengimplementasikan antarmuka tertentu di API JDBC untuk berinteraksi dengan server database kita.
Sebagai contoh, menggunakan driver JDBC memperkenankan kita untuk membuka koneksi databse dan berinteraksi dengan mengirimkan perintah SQL atau database kemudian menerima hasilnya di Java.
Paket Java.sql yang disertakan dalam JDK berisi beragam class dimana sifat-sifatnya ditentukan dan implementasi aktualnya dilakukan di dalam driver pihak ketiga. Vendor pihak ketiga mengimplementasikan antarmuka driver java.sql di dalam driver database yang mereka miliki.
Tipe-tipe Driver JDBC
Implementasi JDBC sangat bergama karena banyaknya jenis platform sistem operasi dan perangkat keras yang mengoperasikan Java. Sun telah memisahkan tipe implementasi ke dalam empat kategori.
Tipe 1: JDBC-ODBC Bridge Driver:
Pada driver tipe 1, suatu bridge JDBC digunakan untuk mengakses driver-driver ODBC yang diinstall pada tiap mesin klien. Menggunakan ODBC membutuhkan kita untuk mengkonfigurasi sistem kita suatu Data Source Name (DSN) yang mewakili database target.
Saat pertama kali Java keluar, ini adalah driver yang sangat berguna, karena kebanyakan database hanya mendukung akses ODBC tetapi kini tipe driver ini hanya direkomendasikan untuk penggunaan eksperimental atau ketika tidak ada alternatif lain yang tersedia.
Type 2: JDBC-Native API:
Pada driver tipe 2, panggilan API JDBC dikonversi kedalam panggilan API C/C++ yang unik untuk database. Driver ini umumnya disediakan oleh vendor database dan digunakan dengan cara yang sama dengan JDBC-ODBC Bridge, dimana driver vendor-specific mestilah diinstall pada tiap-tiap mesin klien.
Jika kita merubah database, kita harus merubah API native karena dia khusus untuk satu databse dan kebanyakan sudah tidak lagi terpakai saat ini. Tapi kecepatan saat menggunakan driver tipe 2 ini lebih cepat karena dia menghilangkan overhead ODBC.
Tipe 3: JDBC-Net pure Java
Pada driver tipe 3, sebuah pendekatan 3 tier digunakan untuk mengakses database. Klien JDBC menggunakan soket network standar untuk berkomunikasi dengan sebuah server aplikasi middleware. Informasi soket kemudian diterjemahkan oleh server aplikasi middleware ke dalam format panggilan yag diminta oleh DBMS dan meneruskannya ke server database.
Jenis driver ini sangat fleksibel, karena tidak membutuhkan kode yang diinstall di klien dan satu driver tunggal dapat menyediakan akses ke beragama database.
Kita dapat menganggap server sebagai “proxy” JDBC, yang berarti dia membuat panggilan untuk aplikasi klien. Sebagai hasilnya, kita perlu beberapa pengetahuan terkait konfigurasi server aplikasi agar dapat secara efektif menggunakan driver tipe ini.
Aplikasi kita dapat saja menggunakan driver tipe 1, 2 atau 4 untuk berkomunikasi dengan database.
Tipe 4: 100% Java murni
Pada driver tipe 4, sebuah driver java murni yang berkomunikasi langsung dengan database vendor melalui koneksi soket. Ini adalah driver dengan performa paling tinggi yang tersedia untuk databse dan biasanya disediakan oleh vendor itu sendiri.
Jenis driver ini sangat fleksibel. Kita tidak perlu menginstall perangkat lunak khusus pada klien ataupun server. Lebih jauh, driver ini dapat diunduh secara dinamis.
Driver MySQL’s Connector/J adalah driver tipe 4. Dikarenakan lingkungan proprietary pada protokol networknya, vendor database biasanya menyediakan driver tipe 4.
Driver mana yang harus saya gunakan ?
Jika kita mengakses salah satu tipe dari database, misalnya Oracle, Sybase atau IBM, maka driver tipe 4 lebih disukai.
Jika aplikasi Java kita mengakses beragam tipe database dalam waktu yang sama, maka tipe 3 lebih disukai
Driver tipe 2 berguna dalam situasi dimana driver tipe 3 atau tipe 4 tidak tersedia.
Driver tipe 1 tidak direkomendasikan sebagai driver pada level deployment dan umumnya hanya digunakan untuk keperluan pengembangan dan pengujian
Bersambung insya Allah (reza@rumahilmu.or.id)
Leave a Reply