Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 22
Java Database Connectivity
Muhammad Sadly Said, S.Kom., MT
Pengantar • Java Database Connectivity (JDBC) adalah Application Programming Interface (API) untuk bahasa pemrograman java yang mengatur bagaimana perangkat lunak bisa mengakses database. • API dalam perangkat lunak adalah interface atau protokol yang mengatur komunikasi antara dua perangkat lunak yang berbeda. • API ini menyediakan beragam metode untuk proses query dan update data yang tersimpan didalam database relasional • JDBC bertujuan untuk mempermudah dalam pengembangan program, lebih spesifik kepada aktivitas yang berhubungan dengan database : • Koneksi ke database • Pengiriman pernyataan query dan update • Mendapatkan dan memproses hasil dari pernyataan query Komponen JDBC • JDBC API menyediakan akses ke data relasional melalui bahasa pemrograman java. Dengan API ini, aplikasi bisa mengeksekusi pernyataan SQL. API JDBC terbagi kedalam dua paket yaitu java.sql dan javax.sql • JDBC Driver Manager mengatur hubungan antara aplikasi java dengan driver JDBC. Tiap-tiap database akan memiliki driver JDBC yang berbeda JDBC-MySQL • Program java dapat berkomunikasi dengan database MySQL melalui API JDBC dan Driver JDBC-MySQL yang biasa dikenal dengan nama MySQL Connector/J • Connector/J disediakan dalam website resmi MySQL https://dev.mysql.com/downloads/ disertai dengan instruksi dan panduan penggunaan. • Untuk dapat menggunakan Connector/J dalam program java, kita perlu mendefinisikan variabel CLASSPATH yang merujuk ke direktori tempat Connector/J tersimpan • Classpath dapat didefinisikan secara global untuk semua aplikasi java melalui variabel sistem operasi • Classpath dapat pula didefinisikan untuk aplikasi java tunggal. Disebutkan pada proses kompilasi dan eksekusi program java JDBC-MySQL : Classpath 1 • Rilis Connector/J disediakan untuk beragam sistem operasi dalam beragam format berkas. • Download versi rilis Connector/J dalam format ZIP yang disediakan melalui menu Platform Independent • Ekstrak Connector/J pada direktori yang ditentukan, sebagai contoh pada direktori C:\Program Files\Java\classpath JDBC-MySQL : Classpath 1 • Buat variabel sistem baru dengan nama CLASSPATH • Control Panel System & Security System Advanced System Settings • Pada jendela System Properties klik tombol Environment Variables JDBC-MySQL : Classpath 1 JDBC-MySQL : Classpath 2 • Cara lain untuk menggunakan Connector/J adalah dengan menyebutkan direktori classpath pada saat kompilasi dan eksekusi program • Dalam proses kompilasi gunakan parameter –cp atau –classpath diikuti dengan nama direktori/file connector/j javac –cp mysql-connector-java-8.0.17.jar NamaProgram.java • Untuk proses eksekusi gunakan parameter –cp atau –classpath diikuti dengan nama direktori/file connector/j dan direktori class Java –cp mysql-connector-java-8.0.17.jar;. NamaProgram API JDBC • Secara umum penggunaan API JDBC terbagi menjadi beberapa tahap • Me-register konektor database • Membentuk koneksi ke database • Membuat pernyataan (statement) query atau update • Mengeksekusi pernyataan • Memproses hasil pernyataan query • Menutup koneksi database API JDBC – Register Driver • Di tahap awal, kita perlu meregister driver untuk database yang akan diakses. Untuk database MySQL kita akan gunakan MySQL Connector/J • Untuk proses ini kita gunakan metode registerDriver() dari class DriverManager – lihat dokumentasi. Parameter dari metode ini adalah class driver dari Connector/J yaitu com.mysql.cj.jdbc.Driver API JDBC – Koneksi ke database • Setelah meregister driver, kita bentuk koneksi ke database menggunakan metode getConnection() dari class DriverManager – lihat dokumentasi • Metode ini menggunakan 3 buah parameter string, yaitu : • URL – lokasi dari database, menggunakan format jdbc:mysql://[hostname]:[port]/[database]. • Hostname Nama atau alamat IP dari perangkat komputer lokasi MySQL dijalankan • Port Nomor port dari layanan database. MySQL menggunakan nomor port 3306 • Database Nama dari database yang akan diakses • User – Akun yang memiliki hak akses ke database • Password – Password dari user • Metode getConnection() akan mengembalikan objek Connection yang nantinya akan digunakan untuk membuat pernyataan (statement) SQL API JDBC – Membuat Pernyataan • Untuk membuat pernyataan (statement) dalam API JDBC kita gunakan metode createStatement() dari objek Connection – lihat dokumentasi • Metode tersebut akan mengembalikan objek Statement yang nantinya bisa digunakan untuk mengeksekusi pernyataan SQL API JDBC – Membuat Pernyataan • Metode lain yang bisa digunakan adalah prepareStatement() dari objek Connection – lihat dokumentasi • Metode ini menggunakan satu parameter String yaitu pernyataan SQL yang akan dieksekusi • Metode ini akan mengembalikan objek PreparedStatement yang nantinya bisa digunakan untuk mengeksekusi pernyataan SQL API JDBC – Eksekusi Pernyataan • Secara umum pernyataan SQL terbagi menjadi beberapa kategori, antara lain : • Data Definition Language (DDL) CREATE, ALTER, RENAME, DROP, TRUNCATE • Data Manipulation Language (DML) INSERT, DELETE, UPDATE, LOCK, MERGE • Data Control Language (DCL) GRANT, REVOKE • Data Query Language (DQL) SELECT • Transaction Control Language (TCL) ROLL BACK, COMMIT, SAVEPOINT • Kategori pernyataan SQL yang umumnya digunakan adalah DDL, DQL, dan DML • Pernyataan SQL SELECT adalah pernyataan yang akan mengembalikan nilai dalam bentuk himpunan hasil atau Result Set. Sebagai contoh : API JDBC – Eksekusi Pernyataan • Pernyataan SQL dieksekusi menggunakan dua macam metode, disesuaikan apakah pernyataan SQL akan mengembalikan nilai atau tidak • Untuk objek Statement, metode yang digunakan adalah : • executeUpdate(sql) – dengan 1 parameter string sql, digunakan untuk mengeksekusi pernyataan DDL dan DML • executeQuery(sql) – dengan 1 parameter string sql, digunakan untuk mengeksekusi pernyataan DQL (SELECT) • Metode ini mengembalikan objek ResultSet yaitu himpunan hasil berupa data tabular • Untuk object PreparedStatement, metode yang digunakan adalah : • executeUpdate() – tanpa parameter • executeQuery() – tanpa parameter • Metode ini mengembalikan objek ResultSet API JDBC – Eksekusi Pernyataan • Contoh eksekusi pernyataan dengan objek Statement API JDBC – Eksekusi Pernyataan • Contoh eksekusi pernyataan dengan objek PreparedStatement API JDBC – Pemrosesan Hasil • Pernyataan SQL yang mengembalikan hasil (dalam bentuk objek ResultSet) perlu diproses lebih lanjut dalam program – perhatikan dokumentasi • ResultSet merepresentasikan data tabular yang terdiri atas baris dan kolom. Objek ini menggunakan cursor untuk berpindah searah dari baris pertama ke baris berikutnya hingga baris terakhir • Perpindahan cursor dari satu baris ke baris berikutnya dilakukan menggunakan metode next() yang mengembalikan nilai boolean, yang akan bernilai false jika sudah mencapai baris terakhir • Metode perpindahan cursor lainnya meliputi : absolute(), first(), last(), dan lain sebagainya API JDBC – Pemrosesan Hasil • ResultSet menyediakan beragam metode untuk mendapatkan nilai dari tiap kolom baris. Metode tersebut menggunakan pola penamaan getXxx() dimana xxx adalah tipe data dari nilai kolom • Metode getXxx() menggunakan satu parameter yaitu nama kolom dengan tipe string atau index kolom dengan tipe integer • Beberapa contoh metode yang umum digunakan antara lain : getString(), getInt(), getLong(), getFloat(), getBoolean(), dan lain sebagainya API JDBC – Pemrosesan Hasil • Contoh penggunaan objek ResultSet Latihan • Perhatikan modul praktikum Terima Kasih