A. LANDASAN TEORI
1. 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 :
1. Impor package java.sql
2. Memanggil Driver JDBC
3. Membangun Koneksi
4. Membuat Statement
5. Melakukan Query
6. Menutup Koneksi
1.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.
1.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.
1.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=Password>
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.
Membuat Statement JCDB 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
B. HASIL PRAKTIKUM
1. Pertama-tama buatlah project baru
2. Kemudian klik kanan pada libraries -> Add Library
3.
libraries -> Add Library-> pilih PostgreSQL JDBC Driver -> klik tombol Add Library
4. Selanjutnya buatlah class baru dengan nama koneksi_postgre, untuk mengoneksikan netbeans ke postgre. Tulislah source code dibawah ini
5. Kemudian buatlah class baru menggunakan JFrame Form, lalu desain hingga manyerupai gambar dibawah ini
6. Lalu berilah source code pada setiap tombol aksinya mmulai dari tombol cari, tombol edit, tombol hapus, tombol reset, tombol simpan dan tombol tampil
#Source Code untuk tombol Cari
#Source Code untuk tombol Edit
#Source Code untuk tombol Hapus
#Source Code untuk tombol Reset
#Source Code untuk tombol Simpan
#Source Code untuk tombol Tampil
C. Kesimpulan, Kritik dan Saran
Laporan kali ini tidak seperti kemarin yang berurusan dengan PostgreSQL dan MySQL, kali ini banyak ngoding di Netbeans yang harus super sabar dan telaten. ya karena kurang koma saja banyak pentung berwarna merah pada projectmu. Dan laporan mengoneksikan kali ini saya masih kurang faham sebenarnya, karena beban tugas akhir UAS yang BANYAK yang salah satunya laporan ini membuat konsentrasi saya terpecah dan tidak maksimal untuk mengerjakannya. Kritik, mungkin banyak sekali kekurangan pada laporan kali ini sehingga wajib mencoba lagi.
D. Referensi
Modul Praktikum Desain Basis Data 2014.pdf