JDBC (Java
database connectivity) adalah spesifikasi standar dari JavaSoft API
(Aplication Programming Interface) yang memungkinkan program Java untuk
mengakses sistem database manajemen. JDBC menyediakan methods untuk
melakukan query dan modifikasi data pada RDBMS seperti Oracle, SQL Server,
MySQL, dll menggunakan Driver Manager. JDBC mirip dengan ODBC (Open
Database Connectivity), hanya saja JDBC spesifik digunakan untuk program Java.
ODBC bersifat language independent.
JDBC
memiliki beberapa kegunaan, yaitu membantu programmer untuk koneksi dengan
data source, membantu mengirimkan query dan update statements ke database,
dan menerima serta memroses hasil yang didapatkan dari database sesuai dengan
query yang diberikan.
Berikut
merupakan empat komponen penting dari JDBC :
1. JDBC-API
JDBC-API
menyediakan fasilitas untuk mengakses database relasional dari program
berbahasa Java. Melalui komponen ini user dapat melakukan proses query dan
perubahan data dalam database. JDBC-API memiliki package utama yang
tersedia pada java.sql dan javax.sql.
2. JDBC
Driver Manager
Merupakan
komponen kelas utama yang mendefinisikan object yang mengkoneksikan aplikasi
Java ke JDBC driver. Komponen ini berfungsi untuk mengatur beberapa tipe JDBC
database driver yang berbeda. JDBC Driver Manager memilih driver mana yang
sesuai untuk koneksi ke suatu database.
3. JDBC
Test Suite
Komponen
ketiga ini memastikan JDBC driver dapat menjalankan program user dan sangat
berguna dalam melakukan testing sebuah aplikasi yang menggunakan teknologi
JDBC.
4. JDBC-ODBC
Bridge
Adalah
database driver yang menggunakan ODBC driver untuk koneksi ke database serta
memiliki fungsi utama untuk translasi dari JDBC method calls ke ODBC function
calls dan mengimplementasikan JDBC untuk semua driver yang didukung oleh ODBC.
Komponen ini dapat diimplementasikan dalam packagesun.jdbc.odbc.
JDBC juga
memiliki 10 arsitektur, yaitu :
1.Database
connections
2.SQL
Statements
3.Result
set
4.Database
metadata
5.Prepared
Statement
6.Binary
Large Objects (BLOBs)
7.Character
Large Objects (CLOBs)
8.Callable
statements
9.Database
Driver
10.Driver
Manager
Tipe
1 – JDBC-ODBC Bridge
Fungsi
–
Translasi query dari JDBC ke ODBC query
– Client
à JDBC Driver à ODBC Driver Database
Keunggulan
– Semua
database yang didukung oleh ODBC dapat diakses
Kelemahan
–
Performance overhead
– ODBC
driver harus diinstal di semua client
–
Dibutuhkan client-side software
Tipe
2 – Java to Native API
Fungsi
–
Konversi JDBC calls ke client API untuk database
– Client
à JDBC driver à Vendor Client DB Library Database
Keunggulan
–
Performa lebih baik daripada tipe 1
Kelemahan
– Vendor
client library harus diinstal di client.
– Tidak
dapat digunakan di internet karena membutuhkan client-side software.
– Tidak
semua database memberikan client-side library
Tipe
3 – Java to Network Protocol or All-Java Driver
Fungsi
–
Menggunakan pendekatan three-tier communication
– Vendor
independent
– Client
à JDBC Driver à Middleware-Net Server Any database
Keunggulan
– Tidak
membutuhkan instalasi pada client-side
–
Middleware server dapat memberikan fungsi tambahan dalam hal caching, load
balancing, logging, auditing, dll.
– Dapat
digunakan di internet
Kelemahan
–
Membutuhkan program yang bersifat database-specific untuk middle tier
– Extra
layer dapat menyebabkan time-bottleneck.
Tipe
4 – Java to Database Protocol
Fungsi
–
Melakukan komunikasi langsung dengan database melalui koneksi socket.
– Driver
berfungsi mengubah JDBC call ke database protocol langsung
–
Diimplementasikan sepenuhnya dalam Java.
– Client
Machine à Native Protocol JDBC Driver Database Server. Contoh: Oracle
Thin Driver
Keunggulan
–
Performa cenderung meningkat à Tidak melakukan translasi ke ODBC, tidak menggunakan
client API, tidak menggunakan middleware layer
Kelemahan
– Pada
sisi client, driver untuk masing-masing database harus terinstal. Berikut
adalah beberapa konsep penting di dalam JDBC :
Transactions
– Secara
default, semua transaksi pada JDBC bersifat auto-commit
Logging
–
Digunakan untuk mengatur apakah dilakukan logging kejadian selama transaksi
dilakukan.
Concurrency
–
Memastikan transaksi terjadi sesuai urutan kronologis.
–
Berhubungan dengan kemungkinan terjadinya multikoneksi yang mengakses data yang
sama.
Selain
apa yang dijelaskan di atas, JDBC masih memiliki komponen penting lain,
yaitu :
Package java.sql
Berisi
beberapa class, interface yang digunakan dalam transaksi.
DriverManager
Menangani
segala sesuatu yang berkaitan dengan driver yang dipakai.
DataSource
Alternatif
dari DriverManager untuk melakukan koneksi database.
JDBC
Connection Object
– Object
untuk melakukan koneksi dengan database
– Membuat
Statement, PreparedStatement, dan CallableStatement untuk eksekusi SQL.
–
Melakukan commit dan rollback transaksi ODBC
Open
Database Connectivity (disingkat
menjadi ODBC) adalah sebuah standar terbuka untuk konektivitas antar mesin basis data. Standar ini menyediakan API
yang dapat digunakan untuk menjalankan dan mengoneksikan sebuah aplikasi dengan
sebuah sistem
manajemen basis data (SMBD). Para desainer ODBC membuatnya
dengan tujuan agar ODBC terbebas dari penggunaan bahasa pemrograman tertentu,
sistem manajemen basis data tertentu, dan sistem operasi tertentu.
Spesifikasi
ODBC menawarkan API prosedural untuk menggunakan query dengan
bahasa SQL untuk mengakses sebuah basis data.
Sebuah implementasi ODBC, akan menyediakan satu aplikasi atau lebih, pustaka inti
ODBC, dan juga "driver basis data". Pustaka inti ODBC,
yang bersifat independen terhadap aplikasi dan juga DBMS, bertindak sebagai
interpreter antara aplikasi dan juga driver basis data, sementara driver basis
data mengandung detail-detail mengenai SMBD tertentu. Sehingga, dengan cara
seperti ini, para programmer dapat menulis aplikasi basis data, tanpa harus
memahami sistem manajemen basis data tertentu, mengingat semuanya telah
ditangani oleh ODBC. Akan tetapi, para pembuat driver basis data ODBC hanya
harus mengetahui bagaimana caranya memasukkan driver basis data ke dalam
pustaka inti ODBC. Dengan begitu, ODBC ini dapat disebut sebagai sistem yang
modular.
ODBC
memiliki beberapa komponen utama, yakni sebagai berikut:
· ODBC API:
sekumpulan panggilan fungsi, kode-kode kesalahan dan sintaksis SQL yang
mendefinisikan bagaimana data dalam sebuah DBMS diakses.
· Driver basis data ODBC: driver (yang berupa dynamic link library) yang
mampu memproses panggilan fungsi ODBC untuk sebuah DBMS tertentu.
· ODBC Driver Manager: yang bertugas untuk memuat driver basis data ODBC yang dibutuhkan oleh
aplikasi.
Pengguna
sistem operasi Windows dapat mengonfigurasikan ODBC dengan menggunakan utilitas
ODBC yang terdapat di dalam Control Panel. Utilitas ini mengizinkan mereka
untuk mendefinisikan DSN (Data Source Name) untuk basis data yang hendak
diakses dan juga driver yang digunakan untuk mengakses basis
data tersebut. Untuk mengonfigurasikan ODBC dengan utilitas ini, mereka dapat
mengasosiasikan sebuah DSN dengan sebuah driver ODBC, yang mengizinkan aplikasi
untuk dapat berinterakse dengan sebuah basis data yang disimpan baik secara
lokal di dalam mesin yang sama maupun di dalam server jaringan.







No comments:
Post a Comment