Last Updated on December 1, 2022 by
Pernahkah Anda terpikirkan bagaimana menghubungkan program aplikasi dengan database? Dalam pemrograman, ada istilah yang disebut API (Application Programming Interface). Pastinya, bagi Anda yang bergelut di bidang pemrograman tidak asing lagi dengan istilah yang satu ini. API salah satu fungsinya menjadi suatu jembatan atau penghubung antar program dan database. Nah, JDBC adalah salah satu API dari Java yang memiliki fungsi tersebut. Pada artikel ini, akan dikupas tuntas mengenai JDBC API hingga langkah-langkah sederhana menggunakannya.
Table of Contents
Apa itu JDBC API?
Java menyediakan API yang disebut dengan Java Database Connectivity atau JDBC API. Seperti namanya, JDBC adalah API Java yang menghubungkan aplikasi Java dengan basis data atau memanipulasi basis data. Dengan kata lain, API ini menjadi perantara antar program dan basis data. Selain itu, hal ini merupakan bagian dari JavaSE (Java Standard Edition) Adanya API ini memudahkan para developer dapat mengakses berbagai tipe basis data dari berbagai penyedia basis data seperti MySQL Server, Oracle, SQL Server, dan lainnya.
Sebelum adanya JDBC, ada API lain yang digunakan yaitu ODBC API atau Open Database Connectivity. ODBC ini merupakan database API untuk mengkoneksikan dan mengeksekusi query. Namun, ODBC ini menggunakan ODBC driver yang ditulis dengan bahasa pemrograman C. Maka dari itulah Java menghadirkan API sendiri, yaitu JDBC API ini yang menggunakan JDBC driver dengan bahasa pemrograman Java.
Umumnya, ada tiga aktivitas yang dapat dilakukan dengan JDBC ini, yaitu:
- Menghubungkan ke basis data seperti yang telah disebutkan sebelumnya.
- Eksekusi query dan update statementke basis data.
- Memproses hasil dari basis data.
Komponen
Adapun empat komponen utama JDBC adalah sebagai berikut.
- JDBC API, yaitu komponen yang menyediakan berbagai metode dan interfacedalam menghubungkan program ke database dengan lebih mudah. Terdiri dari dua paket, yaitu Java SE dan Java EE yang menunjukkan kemampuan WORA (Write Once Run Anywhere).
- JDBC Driver Manager, yaitu komponen yang berfungsi untuk mengatur tipe JDBC database driver yang berbeda.
- JDBC Test Suite, yaitu komponen yang menjalankan testingoperasi seperti insertion, deletion, updation yang dilakukan oleh JDBC driver.
- JDBC-ODBC Bridge Drivers, komponen ini menghubungkan database driver ke database. Bridge yang dimaksud adalah dapat menterjemahkan panggilan method JDBC menjadi panggilan fungsi ODBC.
JDBC Driver
Untuk mengkoneksikan program ke database, maka dibutuhkan JDBC driver. Ada empat tipe JDBC driver di bawah ini beserta keunggulan dan kekurangan yang dimiliki, antara lain:
1. Driver Tipe 1 atau JDBC-ODBC Bridge Driver
Tipe pertama dari JDBC driver menggunakan driver ODBC untuk menghubungkannya ke database. Tipe ini berfungsi sebagai translator query JDBC ke query ODBC. Driver ini mudah digunakan dan dihubungkan ke database manapun. Namun, yang menjadi rintangan adalah kinerja akan menurun karena panggilan method JDBC diubah menjadi panggilan fungsi ODBC. Selain itu, diperlukan juga untuk meng-install driver ODBC di client machine. Jika instalasi klien bukanlah masalah besar, maka tipe driver ini cocok digunakan.
2. Driver Tipe 2 atau Native-API Driver
Tipe driver kedua yang disebut Native API driver ini menggunakan library client-side dari basis data. Driver ini mengubah panggilan method JDBC menjadi panggilan asli (native) dari API basis data. Hal tersebut tidak sepenuhnya ditulis dalam bahasa pemrograman Java. Salah satu keunggulan dari driver ini adalah performansi yang lebih tinggi dari tipe pertama, yaitu JDBC-OJDC bridge driver. Namun, native driver ini perlu di-install pada tiap client machine. Selain itu, library dari client vendor perlu di-install juga pada client machine.
3. Driver Tipe 3 atau Network Protocol Driver
Berbeda dengan tipe driver sebelumnya, pada tipe driver ini sepenuhnya ditulis dengan bahasa pemrograman Java. Driver ini menggunakan middleware (server aplikasi) untuk mengubah panggilan JDBC secara langsung dan tidak langsung protokol basis data khusus vendor. Pada driver ini tidak memerlukan library client side karena server aplikasi dapat melakukan banyak tugas, seperti load balancing, logging, auditing, dan lain sebagainya. Namun, driver tipe ini memiliki beberapa kelemahan, seperti perlu adanya dukungan jaringan pada client machine, dibutuhkan pengkodean khusus basis data yang dilakukan di tingkat menengah, serta pemeliharaan driver ini menjadi lebih mahal karena pengkodean khusus tadi.
4. Driver Tipe 4 atau Thin Driver
Tipe driver terakhir adalah Thin Driver yang mengubah panggilan JDBC secara langsung menjadi protokol basis data khusus vendor. Karena itulah disebut thin driver dan ditulis sepenuhnya menggunakan bahasa pemrograman Java. Meskipun driver ini bergantung pada database, performansi tipe driver ini lebih unggul dibandingkan dengan tipe driver lainnya. Di samping itu, Anda tidak memerlukan software baik pada client-side maupun server-side.
Tipe Arsitektur (2-Tier dan 3-Tier)
Dalam arsitektur JDBC ada dua model pemrosesan untuk mengakses database yang disebut dengan 2-tier (dua tingkat) dan 3-tier (tiga tingkat). Perbedaan kedua tipe arsitektur JDBC adalah pengiriman query-nya yang secara langsung dan tidak langsung.
1. Model Two-Tier
Pada model ini, sebuah aplikasi Java berkomunikasi secara langsung ke sumber data. JDBC driver memungkinkan untuk berkomunikasi antara aplikasi dan sumber data. Jadi, ketika pengguna mengirimkan query ke sumber data, maka hasil query akan dikirimkan kembali ke pengguna. Sumber data dapat diletakkan pada mesin yang sama atau berbeda berbeda pada jaringan ke pengguna yang terkoneksi. Hal ini disebut dengan konfigurasi client atau konfigurasi server yang mana mesin yang memiliki sumber data bertindak sebagai server dan mesin pengguna bertindak sebagai client.
2. Model Three-Tier
Pada model kedua merupakan kebalikan dari model pertama. Pengguna mengirimkan query secara tidak langsung ke sumber data. Query tersebut akan dikirimkan terlebih dahulu ke middle-tier service, barulah perintah tersebut dikirimkan ke sumber data. Sebelum hasilnya sampai ke pengguna, hasil tersebut akan dikirimkan lagi ke middle tier, dari middle tier barulah hasilnya dikirim ke pengguna. Tipe model ini mempermudah proses deploy nanti dan juga dapat meningkatkan performansi.
Interface dan Class
Setelah mengenal tentang JDBC, berikut adalah beberapa daftar interface JDBC API populer yang perlu Anda tahu, antara lain:
- Driver interface
- Connection interface
- Statement interface
- PreparedStatement interface
- CallableStatement interface
- ResultSet interface
- ResultSetMetaData interface
- DatabaseMetaData interface
- Rowset interface
Selain interface populer, ada juga class yang populer, seperti yang disebutkan di bawah ini, yaitu:
- DriverManager class
- Blob class
- Clob class
- Types class
Database Connectivity
Ada langkah singkat dan sederhana dalam melakukan koneksi aplikasi Java ke database menggunakan JDBC API.
1. Import Package
Hal pertama yang tidak boleh dilupakan menggunakan JDBC adalah meng-import package yang didalamnya terdapat kelas-kelas yang digunakan untuk proses interaksi dengan database server seperti Connection, Driver Manager, dan lainnya. Listing untuk mengimportnya, yaitu:
Import java.sql.*;
2. Memanggil Driver
Untuk registrasi class driver, Anda dapat menggunakan forName(nama driver). Ada beberapa nama driver dari database server yang populer digunakan, yaitu:
- JDBC-ODBC: jdbc.odbc.JdbcOdbcDriver
- Oracle: jdbc.driver.OracleDriver
- MySQL: mysql.jdbc.Driver
- PostgreSQL: postgresql.Driver
Misalnya ingin memanggil driver untuk database menggunakan Oracle, maka dapat ditulis:
Class.forName(“oracle.jdbc.driver.OracleDriver”);
3. Membuat Connection
Untuk membangun koneksi dengan database adalah menggunakan Connection interface. Gunakan method getConnection() dan class DriverManager, seperti di bawah ini:
Connection connection=DriverManager.getConnection(argumen);
Beberapa argumen yang dapat digunakan adalah:
getConnection(String url) getConnection(String url, Properties info) getConnection(String url, String name, String password)
4. Membuat Object Statement
Untuk membuat object statement masih menggunakan Connection interface dengan method createStatement(), yaitu
Statement statement=connection.createStatement();
5. Eksekusi Query
Untuk mengeksekusi query ke database dapat menggunakan method executeQuery() dari Statement interface, serta nilai kembaliannya adalah ResultSet.
ResultSet rs=statement.executeQuery(sql);
6. Menutup Connection
Untuk menutup connection, dapat menggunakan method close() dari Connection interface. Hal ini akan secara otomatis menutup object statement dan ResultSet secara otomatis.
connection.close();
Itulah pembahasan mengenai JDBC API yang digunakan untuk menghubungkan aplikasi Java dan database. Semoga semakin paham dan tidak lupa untuk praktik terus, terutama bagi Anda yang ingin mendalami Java. Jangan lupa untuk pantengin terus berbagai informasi menarik lainnya seputar pemrograman di Appkey.id, ya!
Jasa Pembuatan Aplikasi, Website dan Internet Marketing | PT APPKEY
PT APPKEY adalah perusahaan IT yang khusus membuat aplikasi Android, iOS dan mengembangkan sistem website. Kami juga memiliki pengetahuan dan wawasan dalam menjalankan pemasaran online sehingga diharapkan dapat membantu menyelesaikan permasalahan Anda.