tutorial jdbc ramos somya
DESCRIPTION
javaTRANSCRIPT
-
1
Tutorial Aplikasi Database Matakuliah Berbasis Java Swing
Menggunakan Java Database Connectivity (JDBC)
(Ramos Somya, S.Kom., M.Cs.)
Buat teman-teman yang sedang mengambil matakuliah Pemrograman Berorientasi Objek
Lanjut, di dalam materi kuliah terdapat materi tentang JDBC, yaitu bagaimana membuat
aplikasi Java dengan akses ke basis data. Berikut ini saya buatkan tutorial sederhana untuk
membuat aplikasi database matakuliah dengan Java dan basis data MySQL.
Dalam membuat aplikasi ini saya menggunakan beberapa tools sebagai berikut:
- NetBeans IDE 6.7.1 (Bisa juga pakai NetBeans versi terbaru)
- MySQL 5.0 (Saya gunakan Query Browser sebagai front end usernya)
Langsung saja berikut langkah-langkahnya:
1. Pertama kita buat dulu database beserta tabelnya yang akan digunakan untuk menyimpan
data matakuliah. Caranya buka MySQL MySQL Query Browser
2. Akan muncul tampilan seperti berikut:
3. Untuk isian Server Host, Username, Port dan Password dapat kita setting terlebih dahulu
setelah kita instal MySQL-nya, cara setting-nya buka MySQL MySQL Server 5.0
MySQL Server Instance Config Wizard.
-
2
4. Pilih Next terus sampai ketemu jendela untuk mengatur port seperti berikut:
5. Pilih port sesuai dengan port yang tersedia, dan klik Next sampai ketemu jendela untuk
pengaturan password:
6. Tentukan password yang diinginkan (misal: admin). Contreng pada Enable root access
from remote machine (supaya database bisa diakses melalui jaringan). Klik Next dan klik
Execute:
-
3
7. Jika sudah berhasil masuk kembali ke MySQL Query Browser, masukkan Server Host:
localhost, Port: 3306, Username: root, Password: sesuai password yang disetting pada
Config Wizard tadi.
8. Setelah itu klik OK, jika muncul jendela seperti di bawah ini, tekan Ignore.
9. Setelah masuk di MySQL Query Browser, buat database dengan nama: db_matakuliah.
Caranya klik kanan pada bagian Schemata dan pilih Create New Schema.
10. Berikan nama databasenya: db_matakuliah dan tekan OK.
11. Selanjutnya buat tabel pada database tersebut, caranya klik kanan pada db_matakuliah
dan pilih Create New Table. Isikan sebagai berikut:
-
4
12. Tekan Apply Changes dan Execute.
13. Jika berhasil, maka database dan tabelnya sudah siap untuk kita gunakan. Selajutnya kita
buat aplikasi untuk mengakses database db_matakuliah tadi, yaitu untuk memasukkan
data matakuliah dan melihat daftar matakuliah. Caranya: Buka Netbeans dan buat sebuah
project (Java Application), berikan namanya misal: Matakuliah
14. Buat 4 buah package pada project tersebut, yaitu: connection, model, view dan
controller.
15. Selanjutnya tambahkan driver untuk konektor Java dengan database MySQL, caranya
klik kanan pada bagian Libraries dan pilih Add Library Pilih MySQL JDBC Driver dan
klik Add Library.
-
5
16. Hasilnya sebagai berikut:
17. Berikutnya kita buat kode program untuk koneksi Java ke database MySQL, caranya klik
kanan pada package connection dan tambahkan Java Class dan ketikkan kode program
berikut: (sesuaikan password databasenya)
-
6
18. Tambahkan Java Class pada package model dan beri nama: Matakuliah serta tambahkan
kode program berikut:
Tambahkan setter dan getter untuk 6 atribut di atas.
19. Pada package view tambahkan sebuah Jframe Form dengan nama FormMatkul dan
desainlah seperti berikut:
20. Pada package controller tambahkan Java Class dengan nama MatakuliahCon dan
tambahkan kode program berikut:
-
7
21. Pada ActionButton Simpan pada view, tambahkan kode program berikut ini:
Tambahkan juga 2 atribut pada Class FormMatkul, yaitu:
public MatakuliahCon mc = new MatakuliahCon();
public List listMakul = new ArrayList();
Silahkan jalankan aplikasi dan tambahkan satu buah data matakuliah
package controller;
import connection.MyConnection;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.util.logging.Level;
import java.util.logging.Logger;
import model.Matakuliah;
/**
*
* @author Ramos Somya
*/
public class MatakuliahCon {
private Connection connection = null;
public MatakuliahCon() {
this.connection = new MyConnection().getConnection();
}
public String insertMatakuliah(Matakuliah mk) {
String status = "Gagal";
try {
PreparedStatement stm = connection.prepareStatement("INSERT INTO
matakuliah(kode_matakuliah, nama_matakuliah, sks, hari, jam, ruang) VALUES (?,?,?,?,?,?)");
stm.setString(1, mk.getKode_matakuliah());
stm.setString(2, mk.getNama_matakuliah());
stm.setInt(3, mk.getSks());
stm.setString(4, mk.getHari());
stm.setString(5, mk.getJam());
stm.setString(6, mk.getRuang());
stm.executeUpdate();
status = "Data Berhasil Disimpan";
} catch (Exception ex) {
Logger.getLogger(MatakuliahCon.class.getName()).log(Level.SEVERE, null, ex);
}
return status;
}
}
Matakuliah m = new Matakuliah();
m.setKode_matakuliah(txtKodeMatakuliah.getText());
m.setNama_matakuliah(txtNamaMatakuliah.getText());
m.setSks(Integer.parseInt(txtSKS.getText()));
m.setHari(cmbHari.getSelectedItem().toString());
m.setJam(txtJam.getText());
m.setRuang(txtRuang.getText());
String status = this.mc.insertMatakuliah(m);
JOptionPane.showMessageDialog(this, status, "Konfirmasi",
JOptionPane.INFORMATION_MESSAGE);
-
8
22. Berikutnya tambahkan 1 buat method pada class MatakuliahCon seperti berikut:
23. Pada Class FormMatkul tambahkan 1 method:
24. Panggil method bindMatakuliah() tersebut pada constructor class FormMatkul dan pada
bagian setelah perintah insert pada ButtonAction Simpan.
25. Hasilnya seperti berikut:
public List getAll() {
List makul = new ArrayList();
try {
PreparedStatement stm = connection.prepareStatement("SELECT * FROM matakuliah");
ResultSet rs = stm.executeQuery();
while (rs.next()) {
Matakuliah mk = new Matakuliah();
mk.setKode_matakuliah(rs.getString("kode_matakuliah"));
mk.setNama_matakuliah(rs.getString("nama_matakuliah"));
mk.setSks(rs.getInt("sks"));
mk.setHari(rs.getString("hari"));
mk.setJam(rs.getString("jam"));
mk.setRuang(rs.getString("ruang"));
makul.add(mk);
}
} catch (Exception e) {
e.printStackTrace();
}
return makul;
}
public void bindMatakuliah() {
listMakul = mc.getAll();
if (!listMakul.isEmpty()) {
Object[][] data = new Object[this.listMakul.size()][6];
int i = 0;
for (Matakuliah mtk : this.listMakul) {
data[i][0] = mtk.getKode_matakuliah();
data[i][1] = mtk.getNama_matakuliah();
data[i][2] = mtk.getSks();
data[i][3] = mtk.getHari();
data[i][4] = mtk.getJam();
data[i][5] = mtk.getRuang();
++i;
}
this.jTable1.setModel(new DefaultTableModel(data,
new String[]{"Kode Makul", "Nama Makul", "SKS", "Hari", "Jam",
"Ruang"}));
this.jScrollPane1.setViewportView(this.jTable1);
} else {
this.jTable1.setEnabled(true);
}
}
-
9
Silahkan dikembangkan untuk proses update dan delete data.
Good Luck