Dalam latihan kali ini kita akan membahas materdi CRUD dengan menggunakan Java Netbeans, pada latihan ini saya menggunakan Netbeans versi 8.1.
1. Membuat Database
Buat lah database baru dengan nama "
db_java1" pada phpmyadmin, buat sebuah tabel dengan nama
t_siswa, dengan field nim, nama, dan alamat. seperti gamabar di bawah ini.
2. Buat New Project
Buat Project baru pada netbeans anda dengan nama project "
JavaLat1",
3. Membuat Koneksi Database
Buatlah sebuah class baru dengan nama "
ClassDBKoneksi" , Class ini di gunakan sebagai koneksi untuk menghubungkan ke dalam database. Guanakan code berikut ini :
private static Connection koneksi;
public static Connection getkoneksi(){
if(koneksi==null){
try {
String url=new String();
String user=new String();
String password=new String();
url="jdbc:mysql://localhost:3306/db_java1";
user="root";
password="";
DriverManager.registerDriver(new com.mysql.jdbc.Driver());
koneksi=DriverManager.getConnection(url,user,password);
}catch (SQLException t){
System.out.println("Eror membuat koneksi");
}
}
return koneksi;
}
Keterangan :
- "koneksi" pada bagian atas, adalah variabel baru yang akan kita gunakan sebagai penghubung dengan fungsi yang ada pada di dalamnya
- db_java adalah nama database yang kita buat sebelumnya
- Localhost adalah local server kita
- 3306 merupakan port yang di gunakan pada localserver kita.
4. Membuat Form
Buatlah sebuah form menggunakan "Jframeform" dengan tampilan seperti gambar di bawah ini. form ini menggunakan :
- 3 JtextField dengan Variabel Name atau nama, TxtNim, TxtNama, TxtAlamat.
- 4 tombol yaitu simpan, edit, hapus, dan batal, dengan Variabel Name BtnSimpan, BtnEdit, BtnHapus, BtnBatal
- 1 buath tabel dengan Variabel Name tblSiswa.
Buatlah From berikut ini menggunakan nama-nama variabel di atas. Pastikan nama-nama variabel yang anda buat sama sebelum ke tahap selanjutnya.
4. Membuat Fungsi Menampilkan data Pada Tabel
Sebelumnya buat terlebih dahulu Variabel Model, letakkan di bawah
public class FrmSiswa extends javax.swing.JFrame { . Masukkan code berikut ini.
private DefaultTableModel model;
Kemudian buatlah fungsi Public Final Void dengan nama "
loadData", fungsi ini di gunakan untuk memanggil data saat pertama kali form di tampilkan.
public final void loadData(){
model.getDataVector().removeAllElements();
model.fireTableDataChanged();
try{
Connection c= ClassDBKoneksi.getkoneksi();
Statement s= c.createStatement();
String sql="Select * from t_siswa";
ResultSet r=s.executeQuery(sql);
while(r.next()){
Object[]o=new Object[4];
o[0]=r.getString("nim");
o[1]=r.getString("nama");
o[2]=r.getString("alamat");
model.addRow(o);
}
r.close();
s.close();
ShowData();
}catch(SQLException e){
System.out.println("Terjadi Kesalahan");
}
}
Buatlah fungsi Public Void dengan nama "
ShowData", Fungsi ini di gunakan untuk menampilkan data pada database ke dalam tabel, dengan code sebagai berikut ini :
public void ShowData(){
int i=TblSiswa.getSelectedRow();
if(i==-1)
{ return; }
String NIM=(String)model.getValueAt(i, 0);
TxtNim.setText(NIM);
TxtNim.disable();
String NAMA=(String)model.getValueAt(i, 1);
TxtNama.setText(NAMA);
String ALAMAT=(String)model.getValueAt(i, 2);
TxtAlamat.setText(ALAMAT);
}
5. Fungsi Membersihkan Text
Fungsi ini di gunakan untuk membersikan text, apa bila text terisi oleh nilai maka dengan memanggil fungsi ini text akan kosong kembali,
public void HapusText(){
this.TxtNim.setText(null);
this.TxtNama.setText(null);
this.TxtAlamat.setText(null);
TxtNim.enable();
this.TxtNim.requestFocusInWindow();
}
6. Fungsi Menyimpan Data
Fungsi ini digunakan untuk menyimpan data pada text yang kita isi ke dalam database.
public void TambahData(){
String nim =this.TxtNim.getText();
String nama=this.TxtNama.getText();
String alamat=this.TxtAlamat.getText();
try{
Connection c=ClassDBKoneksi.getkoneksi();
String sql="Insert into t_siswa (nim,nama,alamat) values (?,?,?)";
PreparedStatement p=(PreparedStatement)c.prepareStatement(sql);
p.setString(1,nim);
p.setString(2,nama);
p.setString(3,alamat);
p.executeUpdate();
p.close();
}catch(SQLException e){
System.out.println(e);
}finally{
loadData();
JOptionPane.showMessageDialog(this,"Data Telah Tersimpan");
}
}
7. Fungsi Mengubah Data
Fungsi memperbarui data yang telah tersimpan di dalam database. data yang tersimpan bisa kita rubah kembali, kecuali
prymary key dari data tersebut.
public void UpadateData(){
int i= TblSiswa.getSelectedRow();
if(i==-1)
{
return;
}
String nim=(String)model.getValueAt(i, 0);//boleh di ganti id
String nama=this.TxtNama.getText();
String alamat=this.TxtAlamat.getText();
try{
Connection c= ClassDBKoneksi.getkoneksi();
String sql ="UPDATE t_siswa set nama=?,alamat=? WHERE nim=?";
PreparedStatement p=(PreparedStatement)c.prepareStatement(sql);
p.setString(1,nama);
p.setString(2,alamat);
p.setString(3,nim);//yang kode atau id letakkan di nomor terakhir
//p.setString(2,password);
p.executeUpdate();
p.close();
}catch(SQLException e){
System.out.println("Terjadi Kesalahan");
}finally{
loadData();
JOptionPane.showMessageDialog(this,"Data Telah Diubah");
}
}
8. Fungsi Menghapus Data
Fungsi untuk menghapus data pada database, buatlah public void dengan nama "
DeleteData", kemudian masukkan kode berikut ini.
public void DeleteData(){
int i =TblSiswa.getSelectedRow();
if(i==-1)
{ return; }
String KODE=(String)model.getValueAt(i, 0);//nidn boleh diganti id
try {
Connection c= ClassDBKoneksi.getkoneksi();
String sql="DELETE From t_siswa WHERE nim=?";
PreparedStatement p=(PreparedStatement)c.prepareStatement(sql);
p.setString(1,KODE);
p.executeUpdate();
p.close();
}catch(SQLException e){
System.out.println("Terjadi Kesalahan");
}finally{
loadData();
JOptionPane.showMessageDialog(this,"Sukses Hapus Data...");
}
}
9. Fungsi Memanggil Data
Fungsi ini di buat untuk memanggil data untuk di proses, proses yang di maksud di sini adalah untuk mengekskusi data apakah data akan di hapus atau di edit Buatlah fungsi Public Vodi dengan nama "
ShowData"
public void ShowData(){
int i=TblSiswa.getSelectedRow();
if(i==-1)
{ return; }
String NIM=(String)model.getValueAt(i, 0);
TxtNim.setText(NIM);
TxtNim.disable();
String NAMA=(String)model.getValueAt(i, 1);
TxtNama.setText(NAMA);
String ALAMAT=(String)model.getValueAt(i, 2);
TxtAlamat.setText(ALAMAT);
}
10. Aktifkan Button Simpan
Untuk mengaktifkan tombol JButton yang telah kita beri nama "
BtnSimpan" caranya dengan click kanan pada Button Simpan, Pilih Event -> Action -> Action Performed. Kemudian masukkan code di bawah ini untuk memanggil fungsi-fungsi yang kita buat di atas.
this.TambahData();
this.HapusText();
this.ShowData();
11. Aktifkan Button Edit
Caranya sama dengan Button simpan di atas, Pilih Event -> Action -> Action Performed. Kemudian masukkan kode di bawah ini.
this.UpadateData();
this.HapusText();
this.ShowData();
12.Aktifkan Button Hapus
Pilih Event -> Action -> Action Performed. Kemudian masukkan kode di bawah ini.
this.DeleteData();
this.HapusText();
this.ShowData();
13. Aktifkan Button Batal
Pilih Event -> Action -> Action Performed. Kemudian masukkan kode di bawah ini.
this.HapusText();
14. Aktifkan KLIK Tabel
Pilih Event -> Mouse -> Mouse Click. Kemudian masukkan kode di bawah ini.
this.ShowData();
Demikian Materi tentang CRUD Netbeans ini, jika ada pertanyaan silahkan tuliskan di kolom komentar, saya akan senang sekali untuk diskusi bersama anda.