Yeahh, bertemu lagi dengan laporan :D Laporan kali ini agak rumit sob. Tetap stay on fokus, jangan lupa pegang kepala kalo baca :D

A. Landasan Teori
Setelah kita belajar database dari modul pertama sampai modul kedelapan, saatnya kita mengoneksikannya ke pemrograman.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 
Ini urgent banget lohh. Bagi kaum pemula, jangan lupa memberi impor package ini karena didalamnya terdapat beberapa yang kita perlukan dalam koneksi database
Adapun listing untuk mengimpor package java.sql adalah sebagai berikut :
Import java.sql.*;

2.  Memanggil Driver JDBC 
Berikut ini adalah listing program untuk memanggil driver JDBC:
Class.forName(namaDriver); 
atau 
Class.forName(namaDriver).newInstance();

Contoh listing memanggil driver menggunakan MySQL adalah :
try {
Class.forName(“com.mysql.jdbc.Driver”);
} catch (ClassNotFoundException e) {
System.out.println(“Pesan Error : “ + e)
}

3.  Membangun Koneksi 
Object Connection yang dibuat untuk membangun koneksi dengan database server tidak
dengan cara membuat object baru dari interface Connection melainkan dari class
Berikut ini adalah strukturnya:
Connection koneksi = DriverManager.getConnection(<argumen>);
Untuk menangani error yang mungkin terjadi pada proses melakukan koneksi
dengan database maka ditambahkan try-catch.

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 adalah:
a)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();
b) 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");
      }

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

B. TUGAS PRAKTIKUM
Nggak seperti biasanya, kita menggunakan dua dbms untuk perbandingan. Kali ini, cukup satu DBMS aja dan saya memilih MySQL.
Soal praktikumnya, kaya gini nih :
1.  Buatlah koneksi seperti contoh listing kode diatas dengan database kalian masing2 !
2.  Buatlah form pada netbeans dan buatlah tombol insert, update, delete, tampil dan
pencarian seperti dibawah !

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

1. Okee, kita mulai dari nomor satu, yakni membuat listing koneksi. Sobat bisa mengetikkan program seperti ini untuk koneksi di mysql:
2. Membuat tampilan. Saya pake JFrame, text area, text field, maupun combo box tinggal nempel nempel aja :D  Kalo temen-temen mau pake yang ngoding manual, juga ngga papa :D

3. Nah, sekarang menampilkan data ke jfield dan text area dengan menggunakan tombol-tombol yang disediakan.
a. tombol cari
Listing kode tombol cari adalah sebagai berikut :
Untuk kode getString(1), getString(2) dan seterusnya itu berarti data akan diambil dari kolom pertama atau kedua dan seterusnya. Jadi, angka didalam kurung tersebut menunjukkan dari kolom keberapa data akan diambil.
b) tombol simpan
Listing kode tombol simpan adalah sebagai berikut :
 c) tombol Edit
Adapun source code dari tombol edit adalah :

 d) tombol tampil 
digunakan untuk menampilkan seluruh data yang ada dalam tabel
Source code dari tombol tampil adalah sebagai berikut :
 e) tombol reset
Source code :
Menuju ke nomor 4,
4. Sebenarnya, sama saja dengan sourcecode yang ada diatas. Bedanya, kita hanya membuat koneksi sekali saja kemudian, koneksi tersevut kita panggil dalam pembuatan tombol-tombol tersebut. Saya kasih contoh satu aja ya :

#NOTE:
Kalau mau menampilkan data selain text area, misalnya aja mau nampilin pada tabel, bisa juga kok.
Kamu tinggal drag Jtable dari netbeans. Kaya gini ntar tampilannya :

Oke, kita mulai liat source code nya. Dibawah deklarasi con, tambahkan deklarasi tabModel sebagai tabel.
Lanjuut ke tombol cari 

tombol tampil

tombol reset

trus, cek tombol-tombolnya saat running.


 Kalo dibawah ini, jika cari ditekan...


C. KESIMPULAN
So, kesimpulan dar praktikum kali ini adalah kita dapat membuat suatu program dengan menggunakan database dengan cara mengkoneksikannya. Setiap DBMS pasti bisa dikoneksikan walaupun dengan cara masing-masing.

D. Daftar Pustaka
Mustafa, Aziz. Modul Praktikum Basis Data