Teori
Langkah-langkah Koneksi database
Terdapat beberapa langkah yang secara umum harus dilakukan sehingga aplikasi
yang berbasis Java dapat berinteraksi dengan database server. Langkah-langkah tersebut
sebagai berikut :
- Impor package java.sql
- Memanggil Driver JDBC
- Membangun Koneksi
- Membuat Statement
- Melakukan Query
- Menutup Koneksi
1. Impor package java.sql
Pertama-tama yang harus dilakukan sebelum Anda membuat program JDBC
adalah mengimpor package java.sql terbih dahulu, karena di dalam package java.sql
tersebut terdapat kelas-kelas yang akan digunakan dalam proses-proses berintekasi
dengan database server misalnya kelas DriverMaganer, Connection, dan ResultSet.
Hal ini sangat penting dilakukan karena bagi pemula seringkali lupa untuk
mengimpor package yang kelas-kelas yang akan digunakan terdapat di dalamnya,
sehingga mengakibatkan kegagalan dalam mengkompile program Java.
Adapun listing untuk mengimpor package java.sql adalah sebagai berikut :
Import java.sql.*;
Listing ini dituliskan sebelum Anda menulis kelas.
2. Memanggil Driver JDBC
Langkah pertama untuk melakukan koneksi dengan database server adalah
dengan memanggil JDBC Driver dari database server yang kita gunakan. Driver
adalah library yang digunakan untuk berkomunikasi dengan database server. Driver
dari setiap database server berbeda-beda, sehingga Anda harus menyesuaikan Driver
JDBC sesuai dengan database server yang Anda gunakan.
Berikut ini adalah listing program untuk memanggil driver JDBC.
Class.forName(namaDriver); atau Class.forName(namaDriver).newInstance();
Kedua cara di atas memiliki fungsi yang sama yaitu melakukan registrasi
class driver dan melakukan intansiasi. Apabila driver yang dimaksud tidak
ditemukan, maka program akan menghasilkan exception berupa
ClassNotFoundException. Untuk menghasilkan exception apabila driver tidak
ditemukan, maka diperlukan penambahan try-catch. Adapun cara menambahkan
try-catch untuk penanganan error apabila driver tidak ditemukan, sebagai berikut :
Try {
Class.forName(namaDriver);
} catch (ClassNotFoundException e) {
... Penanganan Error ClassNotFoundException
}
Contoh listing memanggil driver menggunakan PosqgreSQL adalah :
try {
Class.forName(“org.postgresql.Driver”);
} catch (ClassNotFoundException e) {
System.out.println(“Pesan Error : “ + e)
}
Berikut ini adalah daftar nama-nama driver dari beberapa database server yang sering
digunakan.
Contoh Listing Program
a. Koneksi Berikut contoh kelas koneksi :
3. Membangun Koneksi
Setelah melakukan pemanggilan terhadap driver JDBC, langkah selanjutnya
adalah membangun koneksi dengan menggunakan interface Connection. Object
Connection yang dibuat untuk membangun koneksi dengan database server tidak
dengan cara membuat object baru dari interface Connection melainkan dari class
DriverManager dengan menggunakan methode getConnection().
Connection koneksi = DriverManager.getConnection(<argumen>);
Untuk menangani error yang mungkin terjadi pada proses melakukan koneksi
dengan database maka ditambahkan try-catch. Exception yang akan dihasilkan pada
proses ini adalah berupa SQLException. Adapun cara penulisan listingnya adalah
sebagai berikut :
try {
... koneksi database
} catch (SQLException sqle){
... penanganan error koneksi
}
Ada beberapa macam argumen yang berbeda dari methode getConnection() yang
dipanggil dari DriverManager, yaitu :
getConnection(String url)
Pada methode diatas hanya memerlukan argumen URL, sedangkan untuk
data user dan password sudah diikutkan secara langsung. Adapun penulisan nilai
sebagai berikut :
jdbc:<DBServer>://[Host][:Port]/<namaDB>?<user=User>&<password=Pa
sword>
Berikut ini contoh penggunaan methode ini didalam program :
try {
String url = “jdbc: postgresql://localhost:3306/Dbase? User = adi & password
= pas”;
Connection koneksi = DriverManager.getConnection(url);
System.out.prinln(“Proses apabila koneksi sukses”);
} catch (SQLException sqle) {
System.out.println(“Proses apabila koneksi gagal dilakukan”);
}
getConnection(String url, Properties info)
Pada methode ini memerlukan URL dan sebuah object Properties.
Sebelum menggunakan methode ini, Anda harus melakukan import package
berupa java.util.*, ini dikarenakan object Properties terdapat pada package
tersebut. Object Properties berisikan spesifikasi dari setiap parameter database
misalnya user name, password, autocommit, dan sebagainya.
Berikut ini contoh penggunaan methode ini didalam program :
try {
String url = “jdbc: postgresql://localhost:5432/praktikumdbd”;
Properties prop = new java.util.Properties(); // tidak mengimpor kelas
prop.put(“user”,”NamaUser”);
prop.put(“password”,”datapassword”);
Connection koneksi = DriverManager.getConnection(url, prop);
System.out.prinln(“Proses apabila koneksi sukses”);
} catch (SQLException sqle) {
System.out.println(“Proses apabila koneksi gagal dilakukan”);
}
getConnection(String url, String user, String password)
Pada methode ini memerlukan argumen berupa URL, user name, dan
password. Methode ini secara langsung mendefinisikan nilai URL, user name
dan password.
Berikut ini contoh penggunaan methode ini didalam program :
try {
String url = “jdbc: postgresql://localhost:5432/ praktikumdbd”;
String user = “adi”
String password “ternate”
Connection koneksi = DriverManager.getConnection(url, user, password);
System.out.prinln(“Proses apabila koneksi sukses”);
} catch (SQLException sqle) {
System.out.println(“Proses apabila koneksi gagal dilakukan”);
}
Berikut ini adalah daftar penulisan URL dari beberapa database server yang
sering digunakan.
4. Membuat Statement
JDBC API menyediakan interface yang berfungsi untuk melakukan proses
pengiriman statement SQL yang terdapat pada package java.sql. Statement yang ada
secara umum digunakan terdiri dari berikut :
Statement
Interface ini dibuat oleh methode Connection.createStatement(). Object
Statement digunakan untuk pengiriman statement SQL tanpa parameter serta
Setiap SQL statement yang dieksekusi dikirim secara utuh ke database.
Statement stat = Connection.createStatement();
PreparedStatement
Interface ini dibuat oleh methode Connection.prepareStatement().
Object PreparedStatement digunakan untuk pengiriman statement SQL dengan
atau tanpa parameter. Interface ini memiliki performa lebih baik dibandingkan
dengan interface Statement karena dapat menjalankan beberapa proses dalam
sekali pengiriman perintah SQL, pengiriman selanjutnya hanya parametered
querynta saja.
PreparedStatement stat = Connection.prepareStatement();
5. Melakukan Query
Setelah kita memiliki object statement, kita dapat menggunakannya untuk
melakukan pengiriman perintah SQL dan mengeksekusinya. Methode eksekusi yang
digunakan untuk perintah SQL terbagi menjadi dua bagian yaitu untuk perintah
SELECT methode eksekusi yang digunakan adalah executeQery() dengan nilai
kembaliannya adalah ResultSet, dan untuk perintah INSERT, UPDATE, DELETE
methode eksekusi yang digunakan adalah executeUpdate().
Berikut ini adalah contoh melakukan eksekusi perintah SQL dan mengambil
hasilnya (ResultSet) dengan menggunakan perintah SELECT :
String sql = “SELECT kode, nama, alamat, kelas FROM dataSiswa”;
ResultSet set = stat.executeQuery(sql);
while (set.next()) {
String kode = set.getString("kode");
String nama = set.getString("nama");
String alamat = set.getString("alamat");
String kelas = set.getString("kelas");
}
Berikut ini adalah contoh melakukan eksekusi perintah SQL dengan
menggunakan perintah DELETE.
String sql = "DELETE FROM data_siswa WHERE kode = “1234”;
PreparedStatement stat = konek.prepareStatement(sql);
stat.executeUpdate();
6. Menutup Koneksi
Penutupan terhadap koneksi database perlu dilakukan agar sumber daya yang
digunakan oleh object Connection dapat digunakan lagi oleh proses atau program
yang lain. Sebelum kita menutup koneksi database, kita perlu melepas object
Statement dengan kode sebagai berikut :
statement.close();
Untuk menutup koneksi dengan database server dapat kita lakukan dengan
kode sebagai berikut :
connection.close();
Praktek Langkah-langkah Koneksi database dengan java di Netbeans
Materi kali ini akan sedikit membubuhkan tutorial untuk pengkoneksian dan
penyampaian contohnya. Seperti berikut langkah-langkahnya :
1. buatlah project baru pada netbeans
2. pada project tersebut, klik kanan – properties
3. pilih Libraries pada list Properties
4. add Library
7. add JAR/Folder
8. browse file konektor PostgreSQL
9. ambil file konektor, semisal :postgresql-9.0-801.jdbc4.jar atau versi yang lain.
10. kemudian open
11. Klik OK
12. coba lihat diproject netbeans - Libraries seperti gambar dibawah ini:
15. disitu sudah tertanam driver Java DB dan jdbc.jar
Setelah selesai maka bisa dilanjutkan membuat kelas java untuk mengkoneksikan
database yang telah dibuat dengan java. Untuk mempermudah gambaran kode
programnya disini terdapat contoh listing sebagai berikut :
Contoh Listing Program
a. Koneksi Berikut contoh kelas koneksi :
b. Insert Data
Berikut contoh kode program insert data pada tabel asisten yang berdiri sendiri :
c. Update Data
Berikut contoh kode program update data pada tabel asisten yang berdiri sendiri :
(bingung???.... Fokuskan pada listing bagian metode eksekusinya...^_^)
d. Hapus Data Berikut contoh kode program delete data pada tabel asisten berdasarkan idnya yang berdiri sendiri :
d. Hapus Data Berikut contoh kode program delete data pada tabel asisten berdasarkan idnya yang berdiri sendiri :
(sekali lagi Fokus pada bagian metode eksekusinya)
e. Memunculkan data (Select) Untuk SQL insert, update, delete menggunakan statement.executeUpdate. Tapi untuk SQL select menggunakan statement.executeQuery. hasil eksekusi dari database sebenarnya disimpan perbaris oleh karena itu biasanya object result set di looping menggunakan while berikut ini contoh penerapan object ResultSet :
e. Memunculkan data (Select) Untuk SQL insert, update, delete menggunakan statement.executeUpdate. Tapi untuk SQL select menggunakan statement.executeQuery. hasil eksekusi dari database sebenarnya disimpan perbaris oleh karena itu biasanya object result set di looping menggunakan while berikut ini contoh penerapan object ResultSet :
Tugas Praktikum
- Buatlah koneksi seperti contoh listing kode diatas dengan database kalian masing2 !
- Buatlah form pada netbeans dan buatlah tombol insert, update, delete, tampil dan
pencarian seperti dibawah !
- Buat Event tiap tombol seperti contoh listing diatas dengan catatan memakai database praktikan sendiri dan menggunakan tabel mahasiswa. Untuk tampil, data munculkan pada jtabel atau text area.
- Buatlah seperti nomor 2. Dengan aturan terdapat kelas koneksi sendiri sehingga tidak menulis ulang pemanggilan driver jdbc, url, dan koneksi nya pada saat insert,update, delete dan tampil data.
Postgre SQL vs MySQL
-
Kesimpulan
Jadi kesimpulannya, Teknik Informatika itu tidak sesusah yang kalian bayangkan
Lho.... Ini ngapload modul ta cak?????
BalasHapus:)))) wah, maaf cak ini mau saya perbaiki...
BalasHapus