- Nyalakan xampp control yang ada pada perangkat komputer anda.
- Buka di web browser anda dengan menginputkan address : "http://localhost/phpmyadmin"
- Buat database sesuai perintah, dengan contoh "penjualanbuku" pada kolom "Create New Database", lalu tekan tombol "create"
- Lalu masukkan tabel yang diperlukan sebagai isi dari database anda. Seperti dibawah ini :
- Lalu anda tekan tombol "go" yang berada di samping kanan.
- Lalu buatlah field seperti gambar dibawah ini :

Keterangan : id_distributor sebagai PRIMARY KEY
Setelah proses di database. Kita lanjut ke NetBeans, dan buat project Baru. Dengan contoh seperti di bawah ini :
- Sisipkan data pada field tabel untuk menjadi bahan ujicoba saat penampilan data. Caranya klik "insert" pada menu bar lalu isikan data dan jangan lupa klik "go"
- Lalu Anda buat satu package Caranya klik kanan pada Source Packages ->New->Java Package...
- Setelah itu buat package untuk sebuah koneksi dengan nama koneksi.
- Dalam package tersebut buat java.class dengan nama Koneksi. Ikuti langkah-langkah berikut : dengan cara klik kanan pada package koneksi lalu pilih tools Java Class.
- Maka akan tampil seperti di bawah ini
- Setelah anda memasuki halaman form java.class tersebut anda pilih tools "source" pada bagian atas form, disamping tools "design".
- Masukkan source code dibawah ini agar form java.class koneksi anda berjalan.
package koneksi; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.logging.Level; import java.util.logging.Logger; /** * * @author nengjebret */ public class Koneksi { public static Connection setKoneksi() { String konString = "jdbc:mysql://localhost:3306/penjualanbuku"; Connection koneksi = null; try{ Class.forName("com.mysql.jdbc.Driver"); koneksi = (Connection) DriverManager.getConnection(konString,"root",""); System.out.println("Koneksi Berhasil"); } catch (ClassNotFoundException | SQLException ex){ Logger.getLogger(Koneksi.class.getName()).log(Level.SEVERE, null, ex); System.out.println("Koneksi Gagal"); } return koneksi; } public static int execute(String SQL) { int status = 0; Connection koneksi = setKoneksi(); try { Statement st = koneksi.createStatement(); status = st.executeUpdate(SQL); } catch (SQLException ex) { Logger.getLogger(Koneksi.class.getName()).log(Level.SEVERE, null, ex); } return status; } public static ResultSet executeQuery(String SQL) { ResultSet rs = null; Connection koneksi = setKoneksi(); try { Statement st = koneksi.createStatement(); rs = st.executeQuery(SQL); } catch (SQLException ex) { Logger.getLogger(Koneksi.class.getName()).log(Level.SEVERE, null, ex); } return rs; } }
- Selanjutnya anda membuat package baru dengan nama Master, caranya sama seperti saat anda membuat package koneksi diatas.
- Bila telah tercipta package tersebut lalu anda klik kanan pilih "New" lalu "JFrame Form" beri nama "ListDistributor" lalu klik Finish dan anda masuk pada tools DESIGN
- Tulisan DAFTAR LIST DISTRIBUTOR diambil dari Palette Label
- Tambahkan ScrollPane pada Palette untuk menampung design tabel.
- Tambahkan Table dari Palette untuk menampilkan data dari tabel di database dan ubah variable name table tersebut dengan cara klik kanan pada Table->Change Variable Name. Tuliskan nama variable table yang baru seperti contoh tbldistributor.
- Tulisan Action diambil dari Palette Label.
- Baru, Ubah, Hapus, Refresh, Keluar adalah Button yang di ambil dari Palette dan ubah variable name table tersebut dengan cara klik kanan pada->Change Variable Name. Tuliskan nama variable table yang baru seperti contoh btnbaru, btnubah, btnhapus, btnrefresh, dan btnkeluar.
- Apabila DESIGN telah selesai, silahkan anda lanjutkan dengan memasukan source code dibawah ini, pilih terlebih dahulu tools SOURCE
package Master; import koneksi.Koneksi; import java.sql.ResultSet; import java.sql.SQLException; import java.util.logging.Level; import java.util.logging.Logger; import javax.swing.JOptionPane; import javax.swing.table.DefaultTableModel; /** * * @author nengjebret */ public class distributor extends javax.swing.JFrame { /** Creates new form distributor */ public distributor() { initComponents(); this.setLocationRelativeTo(this); }
- Source code untuk menampilkan data
public void selectData() { String kolom[] = {"ID Distributor","Nama Distributor","Alamat","Telepon"}; DefaultTableModel dtm = new DefaultTableModel(null, kolom); String SQL = "SELECT id_distributor, nama_distributor, alamat, telepon FROM distributor"; ResultSet rs = Koneksi.executeQuery(SQL); try { while(rs.next()) { String ID = rs.getString(1); String Nama = rs.getString(2); String Alamat = rs.getString(3); String Telepon = rs.getString(4); String data[] = {ID,Nama,Alamat,Telepon}; dtm.addRow(data); } } catch (SQLException ex) { Logger.getLogger(distributor.class.getName()).log(Level.SEVERE, null, ex); } tbldistributor.setModel(dtm); }
- Source code untuk mencari data
public void cari(){ DefaultTableModel table = new DefaultTableModel(); table.addColumn("ID Distributor"); table.addColumn("Nama Distibutor"); table.addColumn("Alamat"); table.addColumn("Telepon"); String keyword = txtcari.getText(); try{ String SQL = "SELECT id_distributor, nama_distributor, alamat, telepon from distributor where "+" id_distributor like '%"+keyword+"%' or nama_distributor like '%"+keyword+"%' or alamat like '%"+keyword+"%' or telepon like '%"+keyword+"%'"; ResultSet rs = Koneksi.executeQuery(SQL); while(rs.next()){ table.addRow(new Object[] { rs.getString("id_distributor"), rs.getString("nama_distributor"), rs.getString("Alamat"), rs.getString("Telepon") }); } }catch(Exception e){ System.out.println(); } tbldistributor.setModel(table); }
- Source code untuk mengubah data
private void Ubah(){ try { int i = tbldistributor.getSelectedRow(); String id = tbldistributor.getValueAt(i, 0).toString(); String nama = tbldistributor.getValueAt(i, 1).toString(); String alamat = tbldistributor.getValueAt(i, 2).toString(); String telepon = tbldistributor.getValueAt(i, 3).toString(); inputdistributor dist = new inputdistributor(); dist.setIdDistributor(id); dist.setNamaDistributor(nama); dist.setAlamatDistributor(alamat); dist.setTeleponDistributor(telepon); dist.setUpdate(true); dist.setVisible(true); } catch (Exception e) { JOptionPane.showMessageDialog(rootPane, "Pilihdata","Informasi",JOptionPane.INFORMATION_MESSAGE); } }
- Source code untuk menghapus data
private void hapus(){ try { int i = tbldistributor.getSelectedRow(); String ID = tbldistributor.getValueAt(i, 0).toString(); if (JOptionPane.showConfirmDialog(rootPane,"Anda Yakin Akan Menghapus\nData "+ID, "Informasi", JOptionPane.OK_CANCEL_OPTION,JOptionPane.INFORMATION_MESSAGE) ==JOptionPane.OK_OPTION) { String query = "DELETE FROM distributor WHERE id_distributor= '"+ID+"'"; int a = Koneksi.execute(query); if (a>0) { JOptionPane.showMessageDialog(this, "Data Berhasil Dihapus!", "Sukses", JOptionPane.INFORMATION_MESSAGE); } else { JOptionPane.showMessageDialog(this, "Data Gagal Dihapus!", "Gagal", JOptionPane.WARNING_MESSAGE); } } } catch (Exception e){ JOptionPane.showMessageDialog(this, "Pilih Baris Data Terlebih Dahulu", "Error", JOptionPane.WARNING_MESSAGE); } }
- Source code untuk button Baru, caranya double klik button nya. lalu secara otomatis kita akan di minta memasukan souce code ke dalamnya. di bawah ini adalah souce codenya.
new inputdistributor().setVisible(true);
- Seperti cara yang pertama, double klik pada button Ubah dan masukan code di bawah ini.
Ubah(); //Memanggil method ubah
- double klik button Hapus dan masukan code di bawah ini.
Hapus(); //Memanggil method hapus
- double klik button Refresh dan masukan code di bawah ini.
selecetData(); //Memanggil method selectData
- double klik button keluar lalu masukan kode di bawah ini.
if(JOptionPane.showConfirmDialog(rootPane, "Anda akan keluar dari daftar distributor ?", "Informasi", JOptionPane.CANCEL_OPTION, JOptionPane.INFORMATION_MESSAGE)==JOptionPane.OK_OPTION)this.dispose();
- untuk menjalankan method cari, silahkan anda klik kanan texfield cari dengan variable name txtcari lalu pilih event->Key->KeyReleased. Dan masukan method di bawah ini.
cari(); //untuk memanggil method cari
CARA MENGINPUT DATA
- Pertama kalian buat sebuah form baru dengan menggunakan cara seperti saat anda membuat form list distributor.
- Dari package master tersebut lalu anda klik kanan pilih "New" lalu "JFrame Form" beri nama "inputDistributor" lalu klik Finish dan anda masuk pada tools DESIGN
Ket:
- Tulisan INPUT DATA DISTRIBUTOR diambil dari Palette Label
- Tulisan ID Distributor, Nama Distributor, Alamat, Telepon diambil dari Palette Label.
- Tambahkan textfield untuk menginputkan data ID Distributor, Nama Distributor, Alamat dan Telepon dan ubah variable name textfield tersebut dengan cara klik kanan pada textfield->Change Variable Name. Tuliskan nama variable textfield yang baru seperti contoh txtiddistributor, txtnamadistributor, txtalamat, txttelepon
- Simpan, Keluar adalah Button yang di ambil dari Palette dan ubah variable name table tersebut dengan cara klik kanan pada->Change Variable Name. Tuliskan nama variable table yang baru seperti btnsimpan dan btnkeluar.
- Apabila DESIGN telah selesai, silahkan anda lanjutkan dengan memasukan source code dibawah ini, pilih terlebih dahulu tools SOURCE
package mnuMaster; import koneksi.Koneksi; import javax.swing.JOptionPane; /** * * @author nengjebret */ public class inputdistributor extends javax.swing.JFrame { /** Creates new form inputbuku */ private String idDistributor; private String namaDistributor; private String alamatDistributor; private String teleponDistributor; private boolean update = false; public inputdistributor() { initComponents(); this.setLocationRelativeTo(this); }
- Source code untuk menyimpan data
private void simpan(){ if ("".equals(txtiddistributor.getText()) || "".equals(txtnamadistributor.getText()) || "".equals(txtalamat.getText()) || "".equals(txttelepon.getText())) { JOptionPane.showMessageDialog(this, "Harap Lengkapi Data", "Error", JOptionPane.WARNING_MESSAGE); } else { try{ String ID = txtiddistributor.getText(); String Nama = txtnamadistributor.getText(); String Alamat = txtalamat.getText(); String Telepon = txttelepon.getText(); String SQL = "insert into distributor(id_distributor,nama_distributor,alamat,telepon)" + "VALUES ('"+ID+"','"+Nama+"','"+Alamat+"','"+Telepon+"')"; int i = Koneksi.execute(SQL); if (i>0) { JOptionPane.showMessageDialog(rootPane, "Data Berhasil Ditambahkan", "Sukses", JOptionPane.INFORMATION_MESSAGE); } else { JOptionPane.showMessageDialog(rootPane, "Data Gagal Ditambahkan", "Sukses", JOptionPane.WARNING_MESSAGE); } } catch (Exception e){ JOptionPane.showMessageDialog(rootPane, "Kesalahan Dalam Menyimpan Data"); } } }
- Source Code untuk membatalkan input data
this.dispose();
- Source Code untuk mengupdate data
private void UpdateData(){ String ID = txtiddistributor.getText(); String Nama = txtnamadistributor.getText(); String Alamat = txtalamat.getText(); String Telepon = txttelepon.getText(); String SQL = "update distributor set id_distributor = '"+ ID +"', nama_distributor = '"+ Nama +"', alamat = '"+Alamat+"'," + "telepon = '"+ Telepon +"' where id_distributor = '"+ this.getIdDistributor() +"'"; int i = Koneksi.execute(SQL); if (i>0) { JOptionPane.showMessageDialog(rootPane, "Data Berhasil Diubah", "Sukses", JOptionPane.INFORMATION_MESSAGE); } else { JOptionPane.showMessageDialog(rootPane, "Data Gagal Diubah", "Gagal", JOptionPane.WARNING_MESSAGE); } } private void pushData(){ txtiddistributor.setText(this.getIdDistributor()); txtnamadistributor.setText(this.getNamaDistributor()); txtalamat.setText(this.getAlamatDistributor()); txttelepon.setText(this.getTeleponDistributor()); }
- Saat anda akan menjalankan button simpan, double klik pada button simpan dan masukkan source code berikut :
if (isUpdate()==true){ UpdateData(); } else { simpan(); }
- Klik kanan pada JFrame di tools Navigator saat anda masuk ke DESIGN
- Pilih Events
- Pilih Window
- Klik windowOpened[formWindowOpened]
- Dan masukkan source code nya :
if (update == true){ pushData(); btnsimpan.setText("Ubah"); } else { btnsimpan.setText("Simpan"); }
0 komentar:
Posting Komentar