BAB IX
KONEKSI POSTGRESQL PADA JAVA
(Netbeans)
Bahasan dan
Sasaran
a. Bahasan
1.
Pada bab kali ini akan membahas tentang koneksi PostgreSQL dengan
bahasa pemrograman java.
2.
Selain hal itu akan dibahas juga mengenai kode pemrograman untuk
manipulasi data.
b. Sasaran
Mahasiswa memahami dalam
penggunaan Database PostgreSQL dan Bahasa pemrograman Java untuk membuat suatu
program aplikasi..
DASAR 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. Import package
java.sql
2. Memanggil Driver
JDBC
3. Membangun koneksi
4. Membuat statement
5. Melakukan query
6. Menutup koneksi
1.
Import 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.
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=Pasword>
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 querynya
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();
2)
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
5.
Add JAR/Folder
6.
Browse file konektor PostgreeSQL
7.
ambil file konektor, semisal :postgresql-9.0-801.jdbc4.jar atau
versi yang lain.
8.
Kemudian open
9.
Klik OK
10.
coba lihat diproject netbeans - Libraries seperti gambar dibawah ini:
11.
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
b.
insert data
c.
update data
d.
hapus data
e.
memunculkan data
3. HASIL PRAKTIKUM
setelah ditambahkan buatlah void koneksi seperti berikut ini :
kemudian kita coba, apakah sudah berhasil terkoneksi :
ternyata sudah berhasil. ok...
setelah itu buatlah desain form yang akan ditampilkan seperti pada soal nomor 2 :
ubah nama textfield dengan txtnim, txtnama, txtalamat dan seterusnya, ubah juga nama tombol-tombolnya agar mudah diingat.
setelah kamu beri nama, berikan aksi pada semua button-nya, seperti berikut.
1. CARI
kita coba masukkan nim 11 maka akan ditampilkan :
2. SIMPAN
kita coba untuk menginputkan data :
kemudian klik button simpan
ok.. data telah disimpan. tapi, tunggu sebentar ya, coba kita cek di postgre apakah data ini juga tersimpan disana. ayo buka dulu SQLshell nya :)
sip deh, itu dia, ada kan yang namanya bagus yang barusan kita inputkan :). lanjuuut !
3. UBAH
kita cobaa... inputkan data dan klik button ubah, maka.... 'data berhasil diubah'
kita cek lagi di SQLShellnya,
4. HAPUS
kemudian kita cek lagi di SQLShell nya
sudah tidak ada kan yang memiliki nim 15 ? hehe.. lanjuuut...!
5. TAMPIL
kita coba tampilkan data mahasiswa
dan pada SQLshell :
sama kan???
6. RESET
kita coba, yang tadinya menampilkan data trus kita klik tombol reset, apa yang terjadi?
kosong ternyata.
okelah mungkin itu yang dapat saya sampaikan pada pembaca :)
berikut ini adalah hasil praktikum saya :yang pertama buat project baru pada netbeans, kemudian klik kanan, add library dan pilih postgreSQL:
setelah ditambahkan buatlah void koneksi seperti berikut ini :
kemudian kita coba, apakah sudah berhasil terkoneksi :
ternyata sudah berhasil. ok...
setelah itu buatlah desain form yang akan ditampilkan seperti pada soal nomor 2 :
ubah nama textfield dengan txtnim, txtnama, txtalamat dan seterusnya, ubah juga nama tombol-tombolnya agar mudah diingat.
setelah kamu beri nama, berikan aksi pada semua button-nya, seperti berikut.
1. CARI
kita coba masukkan nim 11 maka akan ditampilkan :
2. SIMPAN
kita coba untuk menginputkan data :
kemudian klik button simpan
ok.. data telah disimpan. tapi, tunggu sebentar ya, coba kita cek di postgre apakah data ini juga tersimpan disana. ayo buka dulu SQLshell nya :)
sip deh, itu dia, ada kan yang namanya bagus yang barusan kita inputkan :). lanjuuut !
3. UBAH
kita cobaa... inputkan data dan klik button ubah, maka.... 'data berhasil diubah'
kita cek lagi di SQLShellnya,
4. HAPUS
coba kita hapus data mahasiswa yang memiliki nim 15
sudah tidak ada kan yang memiliki nim 15 ? hehe.. lanjuuut...!
5. TAMPIL
kita coba tampilkan data mahasiswa
dan pada SQLshell :
sama kan???
6. RESET
kita coba, yang tadinya menampilkan data trus kita klik tombol reset, apa yang terjadi?
kosong ternyata.
okelah mungkin itu yang dapat saya sampaikan pada pembaca :)
4. RANGKUMAN
A. Rangkuman
Dari praktikum diatas dapat saya simpulkan bahwa ternyata postgreSQL juga bisa dikoneksikan dengan netbeans, ini akan mempermudah pekerjaan kita, bisa lansung insert, update dan delete, oh iya, bisa juga untuk mencari data yang telah kita simpan. jadi lebih mudah kan daripada di postgreSQL yang harus dimasukkan lansung query nya ketika ingin membuat petintah.
B. Kritik & saran
masih banyak yang bisa dimodifikasi dari hasil praktikum diatas, silahkan dikembangkan dengan mencari tutorial di literatur dan buku-buku yang tebal. hehe
C. Manfaat pembaca
pembaca dapat mengetahui bagaimana cara mengoneksikan netbeans dengan postgreSQL. semoga yang sedikit ini bisa bermanfaat.
5. DAFTAR PUSTAKA
Kadir, Abdul. 2010. Mudah Mempelajari Database
MySQL. Yogyakarta : Andi
Simarmata, Janner. 2007. Perancangan Basis Data.
Yogyakarta : Andi
http://catatan-ts.blogspot.com/2012/09/membuat-koneksi-postgresql-di.html
MODUL PRAKTIKUM DBD 2014
http://catatan-ts.blogspot.com/2012/09/membuat-koneksi-postgresql-di.html
MODUL PRAKTIKUM DBD 2014
0 komentar:
Posting Komentar