KONEKSI POSTGRESQL PADA JAVA
(Netbeans)
A.
Landasan 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 :
1. Impor package java.sql
2. Memanggil Driver JDBC
3. Membangun Koneksi
4. Membuat Statement
5. Melakukan Query
6. 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)
}
Database Server
|
Nama Driver
|
JDBC-ODBC
|
sun.jdbc.odbc.JdbcOdbcDriver
|
MySQL
|
com.mysql.jdbc.Driver
|
PostgreSQL
|
org.postgresql.Driver
|
Microsoft SQLServer
|
com.microsoft.jdbc.sqlserver.SQLServerDriver
|
Oracle
|
oracle.jdbc.driver.OracleDriver
|
IBM DB2
|
COM.ibm.db2.jdbc.app.DB2Driver
|
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.
Database Server
|
Nama URL
|
Contoh penggunaan
|
JDBC-ODBC
|
jdbc:odbc:<NamaDatabase>
|
jdbc:odbc:Dbase
|
MySQL
|
jdbc:mysql://<nmHost>:<port>/<nmDB>
|
jdbc:mysql://localhost:3306/Dbase
|
PostgreSQL
|
jdbc:postgresql://<nmHost>:<port>/<nmDB>
|
jdbc:postgresql://localhost:5432/Dbase
|
Microsoft SQLServer
|
jdbc:microsoft:sqlserver://<nmHost>:<port>;
DatabaseName=<namaDatabase>
|
jdbc:microsoft:sqlserver://localhost:1433;
DatabaseName=Dbase
|
Oracle
|
jdbc:oracle:thin:@<nmHost>:<port>:<nmDB>
|
jdbc:oracle:thin:@localhost:1521:Dbase
|
IBM DB2
|
jdbc:db2:<NamaDatabase>
|
jdbc:db2:Dbase
|
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. pilihLibraries pada list Properties
4. add Library
7. addJAR/Folder
8. browse file konektor PostgreSQL
9. ambil file konektor, semisal :postgresql-9.0-801.jdbc4.jar atau versi
yang lain.
10. kemudianopen
11. Klik OK
Hasil Praktikum
1.koneksi Database
Setelah semua
selesai disiapkan maka kita buat kelas koneksi untuk menghubungkan PostgreSQL
dengan netbeans. Berikut ini adalah gambaran dari kelas koneksi yang telah
selesai dibuat.
Setelah source code selesai diketik,
langkah selanjutnya adalah kita coba jalankan programnya. Apabila berhasil
nantinya akan memunculkan seperti gambar berikut ini:
2. Rancang
Form
Selanjutnya, saya akan membuat sebuah form
dimana didalamnya terdapat tombol
insert, update, delete, tampil dan pencarian terhadap data yang telah saya
koneksikan pada nomor sebelumnya.Berikut gambar yang dihasilkan dari proses pembuatan form tersebut:
3.
Membuat Fungsi Event
Selanjutnya saya akan membuat fungsi event atau aksi
terhadap setiap tombol yang telah saya buat pada form data mahasiswa. esensinya
proses ini tidaklah jauh berbeda dengan beberapa fungsi method yang telah saya
buat pada bab sebelumnya. hanya saja disini lebih mengembangkan aspek
kreativitas, tujuannya adalah agar program yang kita buat dapat bersifat lebih
menarik dan mempunyai nilai estetika yang lebih dari pada program yang saya
buat pada bab sebelumnya. --> Kelas Insert
Selanjutnya adalah
kelas insert. Kelas ini fungsinya adalah untuk memasukkan data kedalam
database, namun cara menjalankannya adalah dengan memanggil kelas yang sudah
dibuat kedalam method utama. Contoh kelas insert yang telah dibuat adalah
sebagai berikut :
Disini saya telah mencoba menginsert suatu data, untuk lebih jelasnya mari kita lihat gambar berikut ini:
Setelah program berhasil berjalan dengan
baik pada netbeans selanjutnya kita lakukan pengecekan terhadap database yang
berada di postgres. Berikut gambar yang dihasilkan dari proses pengecekan
tersebut:
--> Kelas Update
Kelas selanjutnya
adalah kelas update. Kelas ini gunanya adalah untuk mengubah data yang sudah
masuk kedalam database sehingga apabila ada data yang ingin diubah maka kita
tidak perlu repot untuk menghapus dan membuat lagi data yang baru. Untuk
menjalankan kelas update ini kita harus memanggilnya pada method utama. Berikut
adalah contoh dari kelas update yang sudah dibuat.
Langkah pertama adalah dengan
mengetikkan source code diatas terlebih dahulu. Setelah itu kita coba jalankan
program dengan memperbaharui suatu data yang terdapat pada database mahasiswa.
Disini saya telah mencoba mengupdate suatu data, untuk lebih jelasnya mari kita
lihat gambar berikut ini:
Berikut gambar yang dihasilkan dari
proses pengecekan tersebut:
--> Kelas Delete
Kelas susudah
kelas update adalah kelas delete, yaitu kelas yang fungsinya untuk menghapus
data yang ada dalam database. Penghapusan data ini menggunakan kata kunci
berupa nim dari mahasiswa yang akan dihapus datanya. Sama halnya dengan kelas
yang lain, untuk menjalankan kelas ini harus di panggil di method utama.
Berikut adalah source code untuk kelas delete :
. Disini saya telah mencoba menghapus
suatu data, untuk lebih jelasnya mari kita lihat gambar berikut ini:
--> Kelas Tampil
Kelas tampil ini
sebenarnya sudah di jalankan untuk membuktikan kelas yang lainnya berhasil
dijalankan atau tidak, seperti kelas insert, update, dan delete. Susunan source
code untuk kelas tampil ini bisa dilihat pada gambar berikut :
PENUTUP
4.1. Kesimpulan
Koneksi Postgre pada Java khususnya pada netbeans berguna untuk membuat program
aplikasi yang berguna untuk mengolah data berupa database agar lebih gampang
diolah dan digunakan oleh semua orang tanpa masuk langsung kedalam aplikasi
database dimana dalam hal ini menggunakan PostgreSQL.
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
Daftar Pustaka:
modul praktikum desain basis data 2014.pdf
Daftar Pustaka:
modul praktikum desain basis data 2014.pdf
Tidak ada komentar:
Posting Komentar