Selasa, 02 Desember 2014

LAPORAN PRAKTIKUM IX KONEKSI POSTGRESQL PADA JAVA (Netbeans)



KONEKSI POSTGRESQL PADA JAVA (Netbeans)

A. Dasar Teori

Bismillahirrohmanirrohim..
Assalmualaikum , gimana kabarnya sobat? Semoga sehat semua ya. Aminn  Saya mau bahas tentang hasil praktikum me. Oiya Sebelum membahas tentang  source code untuk mengkoneksikan database dengan java (netbeans), mari kita bahas dulu tentang dasar – dasarnya biar gak kebingungan dalam mempraktekkannya  :

Yang harus kita lakukan agar terhubung dengan java(netbeans), maka kita harus mengkoneksikannya terlebih dahulu, berikut caranya .

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

Pembahasan langkah :

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 registrasiclass 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.
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

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();


B Hasil Praktikum

1.      Buatlah koneksi seperti contoh listing kode diatas dengan database kalian masing2 !
Diatas kan sudah saya jelaskan tentang bagaimana mengkoneksikan ke netbeans, berikut hasilnya ..
Dan untuk megeceknya kita run saja, caranya dengan tekan Shift+f6 , maka jika berhasil akan muncul
                        Seperti berikut :
                        Oke telah berhasil , maka kita lanjut ke soal berikutnya .

2. Buatlah form pada netbeans dan buatlah tombol insert, update, delete, tampil dan pencarian seperti dibawah !


Untuk soal seperti diatas, maka kita menggunakan JFrame Form dengan nama from baru dengan tampilan seperti berikut ini :



            3. 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.
oke deh setelah itu kita aktifkan tombol di atas , dengan cara berikut ini :

-          Tombol  Hapus


Tombol Simpan


Tombol  Edit




Tombol Cari


Tombol  Tampil



Tombol Reset


 Semua diatas telah berhasil dan berikut hasil  pengaplisikannya :

Pertama kita coba cari data mahasiswa yang mempunya Nim 11 , seperti berikut ini :



            Kemudian setelah kita mengklik tombol cari , maka akan muncul seperti berikut ini:


Ok deh fix,
            Setelah itu kita akan mencoba tombol simpan, maka kita masukkan datanya dulu, seperti gambar berikut :


            Kemudian setelah kita klik tombol simpan , maka akan muncul data telah tersimpan , yang menandakan bahwa data anda  telah berhasil disimpan , seperti berikut ini :


Oke fix , lanjut
Lalu kita akan melakukan perintah edit, yang mana alamat pada data diatas kita akan rubah menjadi Sidoarjo, seperti berikut :


Kemudian kita klik tombol edit, maka jika berhasil , data kan berubah, seperti berikut :


Oke deh,
Selanjutnya kita akan menghapus data diatas, maka dengan mengklik tombol hapus maka data akan hilang : Jika berhasil maka akan muncul seperti berikut :


Lalu kita coba menampilkan semua data mahasiswa dengan klik tombol tampil , maka data akan muncul pada Text Area dan akan muncul semua data pada tabel mahasiswa, seperti berikut :



Oke deh yang terakhir kita akan mencoba tombol reset, jika kita mengklik nya maka data diatas akan kosong.seperti berikut :


Selesai ….
            4. 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.

            Jika semuanya sudah berhasil, sekarang kita buat sebuah project lagi, yang bentuk dan aksinya sama, hanya saja terdapat kelas koneksi sendiri sehingga tidak menulis ulang pada pemanggilan driver jdbc, url, dan koneksinya pada saat insert, update, delete dan tampil data .

Seperti di bawah ini :



Berikut aksi dari masing- masing tombol

Tombol Cari :


Tombol Simpan


Tombol Hapus


Tombol Edit


Tombol Tampil


Tombol Reset


Berikut hasilnya
Tombol Cari :


Tombol Simpan


Tombol Edit


Tombol Hapus


Tombol Tampil



Dapat di simpulkan bahwa di sini kita tidak perlu menulis ulang driver jdbc, url, dan koneksi tetapi kita cukup memanggilnya saja,


Kesimpulan

            Setelah  melakukan praktikum kali ini, saya bisa mengetahui bagaimanakan cara untuk  mengkoneksikan database server Postgresql pada Netbeans, dengan cara mengikuti langkah- langkah diatas. Dan juga saya telah bisa melakukan pemanggilan fungsi seperti update, delete , insert , select, reset dari Netbeans dan dapat langsung terhubung dengan PostgreSql, baik itu satu – satu dari pemanggilan driver jdbc nya atau secara langsung.

Kritik

            Dalam laporan ini, mungkin masih kurang memuaskan , karena saya masih pemula , jadi juga butuh masukan dari anda semua.

Saran

            Memang dibutuhkan skill untuk melakukan semua diatas, bagi pemula mungkin akan merasa kesusahan, tapi jangan hawatir, dengan kita terus banyak latihan maka kita akan bisa menguasainya. InsyaAllah, Amiinn

Manfaat

            Kita bisa mengetahui bagaimanakah cara untuk mengkoneksikan Netbeans dengan Database server PostgreSql dan juga kita bisa menggunakan atau mengaktifkan tombol – tombol nya .

Daftar Rujukan

Modeul Praktikum IX
http://catatan –ts.blogspot.com/2012/09/membuat-koneksi-postgresql-di.html






           






Tidak ada komentar:

Posting Komentar