Monday, March 4, 2019

Select, Insert, Update, Delete dengan Netbeans

 buat sebuah tabel dengan nama t_siswa dengan 5 field
Make Tabel
 dengan detail fieldnya
Make Field
 lalu klik Save
Buka Netbeans -> New Project -> Java Application -> Masukan Nama Projek (Finish)
Nama Projek
Setelah Project berhasil dibuat, Kita buat sebuah Class yang berfungsi untuk mengkoneksikan program ke database
New Class
KoneksiDBClass
Klik Finish, class KoneksiDB telah sukses dibuat. selanjutnya untuk mengkoneksikan Program ke Database MySQL itu membutuhkan sebuah Library Tambahan, cara menambahkan library yaitu klik Kanan pada folder Librariesdalam projek anda
Libraries
  setelah itu pilih library MySQL JDBC Driver
mysqljdbc
Klik Add Library, oke semua kebutuhan sudah siap. Buka class KoneksiDB.java lalu tambahkan Coding ini di bawah Kode package testcrud;
import com.mysql.jdbc.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;
public static Connection setKoneksi() {
String konString = jdbc:mysql://localhost:3306/db_testkoneksi;
Connection koneksi = null;
try {
Class.forName(com.mysql.jdbc.Driver);
koneksi = (Connection) DriverManager.getConnection(konString,root,””);
System.out.println(Koneksi Berhasil);
} catch (ClassNotFoundException ex) {
Logger.getLogger(KoneksiDB.class.getName()).log(Level.SEVERE, null, ex);
System.out.println(Koneksi Gagal);
} catch (SQLException ex) {
Logger.getLogger(KoneksiDB.class.getName()).log(Level.SEVERE, null, ex);
System.out.println(Koneksi Gagal);
}
return koneksi;
}
tambahkan juga dibawah fungsi koneksi, yaitu fungsi untuk execute insert, update, delete
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(KoneksiDB.class.getName()).log(Level.SEVERE, null, ex);
}
return status;
}
setelah itu juga kita buat fungsi untuk select data dengan perintah executeQuery
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(KoneksiDB.class.getName()).log(Level.SEVERE, null, ex);
}
return rs;
}
oke, selanjutnya kita buat sebuah Form dengan cara klik kanan di package aplikasi anda -> New -> JFrame Form
New JFrame
masukan nama Form, saya berinama frmMainlalu klik Finish. dan akan muncul tampilan seperti ini
JFrame
 oke selanjutnya kita desain form nya
Desain JFrame
selanjutnya kita ganti nama setiap objek dengan cari klik kanan di objeknya -> Change Variable Name -> Masukan nama objek (contoh: txtNIS,tblData,btnAdd,dll)
setelah semua objek sudah diganti namanya kita buka bagian Source dari frmMain.java
pertama kita akan buat prosedur untuk mengambil data (select) dari database, masukan coding ini dibawah constructor (public frmMain() {})
public void selectData() {
String kolom[] = {NIS,Nama,Jenis Kelamin,Kelas,Alamat};
DefaultTableModel dtm = new DefaultTableModel(null, kolom);
String SQL = SELECT * FROM t_siswa;
ResultSet rs = KoneksiDB.executeQuery(SQL);
try {
while(rs.next()) {
String NIS = rs.getString(1);
String Nama = rs.getString(2);
String JK = “”;
if (L.equals(rs.getString(3))) {
JK = Laki-Laki;
} else {
JK = Perempuan;
}
String Kelas = rs.getString(4);
String Alamat = rs.getString(5);
String data[] = {NIS,Nama,JK,Kelas,Alamat};
dtm.addRow(data);
}
} catch (SQLException ex) {
Logger.getLogger(frmMain.class.getName()).log(Level.SEVERE, null, ex);
}
tblData.setModel(dtm);
}
Sekarang kita coba buat fungsi untuk Insert data ke database, klik 2x objek button Add dan tambahkan coding ini didalamnya
if (“”.equals(txtNIS.getText()) || “”.equals(txtAlamat.getText()) ||
“”.equals(txtKelas.getText()) || “”.equals(txtNama.getText())) {
JOptionPane.showMessageDialog(this, Harap Lengkapi Data, Error, JOptionPane.WARNING_MESSAGE);
} else {
String JK = “”;
if (rdLaki.isSelected()) {
JK = L;
} else {
JK = P;
}
String SQL = INSERT INTO t_siswa (NIS,NamaSiswa,JenisKelamin,Kelas,Alamat)
+ VALUES(‘”+txtNIS.getText()+”‘,'+txtNama.getText()+”‘,'+JK+”‘,
+ “‘”+txtKelas.getText()+”‘,'+txtAlamat.getText()+”‘);
int status = KoneksiDB.execute(SQL);
if (status == 1) {
JOptionPane.showMessageDialog(this, Data berhasil ditambahkan, Sukses, JOptionPane.INFORMATION_MESSAGE);
selectData();
} else {
JOptionPane.showMessageDialog(this, Data gagal ditambahkan, Sukses, JOptionPane.WARNING_MESSAGE);
}
}
run lagi dan tambahkan sebuah data ke database
SuksesinsertData
sekarang kita buat fungsi untuk refresh, klik 2x button refresh dan didalamnya masukkan coding
selectData();
untuk load ulang data di table dari database.
oke Insert dan Refresh sudah berhasil, selanjutnya kita buat fungsi untuk delete.
Klik 2x button delete dan masukkan coding ini didalamnya
int baris = tblData.getSelectedRow();
if (baris != -1) {
String NIS = tblData.getValueAt(baris, 0).toString();
String SQL = DELETE FROM t_siswa WHERE NIS='+NIS+”‘”;
int status = KoneksiDB.execute(SQL);
if (status==1) {
JOptionPane.showMessageDialog(this, Data berhasil dihapus, Sukses, JOptionPane.INFORMATION_MESSAGE);
} else {
JOptionPane.showMessageDialog(this, Data gagal dihapus, Gagal, JOptionPane.WARNING_MESSAGE);
}
} else {
JOptionPane.showMessageDialog(this, Pilih Baris Data Terlebih dahulu, Error, JOptionPane.WARNING_MESSAGE);
}
Coba run, dan hasilnya
Form
dan yang terakhir kita buat fungsi edit.
tapi sebelum nya kita tambahkan dulu event handler untuk table jika salah satu data row ada yang ingin diedit, dengan cara klik kanan di Table Objek anda -> Events -> Mouse -> mouseClicked
setelah itu akan masuk ke bagian source dari Table mouseClicked handler, didalamnya tambahkan coding ini
int baris = tblData.getSelectedRow();
if (baris != -1) {
txtNIS.setText(tblData.getValueAt(baris, 0).toString());
txtNama.setText(tblData.getValueAt(baris, 1).toString());
if (Laki-Laki.equals(tblData.getValueAt(baris, 2).toString())) {
rdLaki.setSelected(true);
} else {
rdPerempuan.setSelected(true);
}
txtKelas.setText(tblData.getValueAt(baris, 3).toString());
txtAlamat.setText(tblData.getValueAt(baris, 4).toString());
}
Klik 2x button edit, dan tambahkan coding ini didalamnya
if (“”.equals(txtNIS.getText()) || “”.equals(txtAlamat.getText()) ||
“”.equals(txtKelas.getText()) || “”.equals(txtNama.getText())) {
JOptionPane.showMessageDialog(this, Harap Lengkapi Data, Error, JOptionPane.WARNING_MESSAGE);
} else {
String JK = “”;
if (rdLaki.isSelected()) {
JK = L;
} else {
JK = P;
}
String SQL = UPDATE t_siswa SET + NamaSiswa='+txtNama.getText()+”‘,
+ JenisKelamin='+JK+”‘,Kelas='+txtKelas.getText()+”‘,
+ Alamat='+txtAlamat.getText()+”‘ ”+ WHERE NIS='+txtNIS.getText()+”‘”;
int status = KoneksiDB.execute(SQL);
if (status == 1) {
JOptionPane.showMessageDialog(this, Data berhasil diupdate, Sukses, JOptionPane.INFORMATION_MESSAGE);
selectData();
} else {
JOptionPane.showMessageDialog(this, Data gagal diupdate, Sukses, JOptionPane.WARNING_MESSAGE);
}
}
run aplikasinya
updateSukses

Menampilkan Database MySQL pada JTable Netbeans

Pada tutorial ini akan dibahas bagaimana data yang tersimpan di database ditampilkan pada table yang disediakan dalam sebuah form. 

1. membuat database di MySQL dengan nama Database "Karyawan" beserta table "tGaji". 

table tGaji :
FieldType
NipVarchar (10)
NamaVarchar (50)
JabatanVarchar (30)
GapokInt (10)
TransportInt (10)
GaberInt (10)

Isi table tGaji dengan data berikut :
NipNamaJabatanGapokTransportGaber
14231022Surya PratamaManager50000005000005500000
14231021Sandika IndriyaniAsisten Manager40000004000004400000
14231020Kartini AndayaniKepala HRD40000004000004400000

2. buatlah project baru di netbeans dengan nama "App_Database" dan buat Java Package dengan nama "Koneksi".

tambahkan driver connection MYSQL Klik kanan pada Libraries dalam project App_Database - pilih Add Library

 Kemudian pada jendela Add Library pilih MySQL JDBC Driver dan klik tombol Add Library
Jika proses import driver MySQL JDBC berhasil maka akan muncul driver baru pada Libraries dalam project App_Database.
Kemudian buat Java Class baru di dalam package Koneksi dengan nama “Db_Koneksi”.


3. Membuat koneksi ke database
M
asukkan kode program berikut pada Java Class Db_Koneksi :
package Koneksi;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import javax.swing.JOptionPane;

public class Db_Koneksi {
      private static Connection conn;
      public static Connection getKoneksi( ){
               String host       = "jdbc:mysql://localhost/karyawan",
                          user       = "root",
                          pass       = "root";
               try{
                      conn = (Connection) DriverManager.getConnection(host, user, pass);
               }catch (SQLException err){
                       JOptionPane.showMessageDialog(null, err.getMessage( ) );
               }
               return conn;
      }
 }

4. Buat Form gaji
buatlah package baru pada App_Database dengan nama "Karyawan".Kemudian buat JFrame Form baru pada package Karyawan dengan nama "Form_Gaji".
  
Masukkan komponen JTable dari jendela Palette pada Form_Karyawan seperti berikut :
Sesuaikan nilai dari komponen – komponen tersebut dengan tabel berikut :
KomponenPropertiesValuesCodeValues
FrameTitleForm Penggajian Karyawan--
Jlabel1TextData Gaji Karyawan--
JTable1--Variable NametGaji
Membuat Kolom Pada Table 
Masukkan kode program berikut pada Form_Gaji untuk membuat kolom dan memberi penamaan judul kolom pada tabel tGaji :

import javax.swing.table.DefaultTableModel;
public class Form_Gaji extends javax.swing.JFrame {
      //membuat variable model dengan untuk DefaultTableModel
      private DefaultTableModel model;

      public Form_Gaji( ){
             initComponents ( );

             //memberi penamaan pada judul kolom tGaji;
             model = new DefaultTableModel ( );
             tGaji.setModel(model);
             model.addColumn("NIP");
             model.addColumn("Nama");
             model.addColumn("Jabatan");
             model.addColumn("Gaji Pokok");
             model.addColumn("Transport"); 
             model.addColumn("Gaji Bersih");
    }


Untuk melihat hasil dari dari pembuatan kolom pada tabel tGaji , jalankan program dengan menekan tombol Shift + F6, jika berhasil maka akan tampil seperti berikut :

Membuat Class Untuk Mememanggil Data di Database

Kemudian buatlah class getData untuk melakukan pemanggilan data pada database

public void getData( ){
     //menghapus isi table tGaji
     model.getDataVector( ).removeAllElements( );
     model.fireTableDataChanged( );

     try{
           //membuat statemen pemanggilan data pada table tGaji dari database
           Statement stat = (Statement) Db_Koneksi.getKoneksi( ).createStatement( );
           String sql        = "Select * from tgaji";
           ResultSet rs   = stat.executeQuery(sql);

           //penelusuran baris pada tabel tGaji dari database
           while(rs.next ()){
                Object[ ] obj = new Object[6];
                obj[0] = rs.getString("Nip"); 
                obj[1] = rs.getString("Nama");
                obj[2] = rs.getString("Jabatan"); 
                obj[0] = rs.getString("Gapok");
                obj[0] = rs.getString("Transport"); 
                obj[0] = rs.getString("Gaber");

                model.addRow(obj);
            }
      }catch(SQLException err){
            JOptionPane.showMessageDialog(null, err.getMessage() );
      }
}



5. Menampilkan Data ke table tGaji

tabel tGaji pada database Karyawan dapat ditampilkan pada Form_Gaji, maka panggil class getData pada class Form_Gaji seperti kode berikut ini :

public Form_Gaji( ){
             initComponents ( );

             //memberi penamaan pada judul kolom tGaji;
             model = new DefaultTableModel ( );
             tGaji.setModel(model);
             model.addColumn("NIP");
             model.addColumn("Nama");
             model.addColumn("Jabatan");
             model.addColumn("Gaji Pokok");
             model.addColumn("Transport"); 
             model.addColumn("Gaji Bersih");

             getData(); 
  }
Jalankan program dengan menekan tombol keyboard Shift + F6, maka akan ditampilkan hasil dari proses



Memunculkan Simbol & Emoji Pada OS Mac

  Memunculkan Simbol & Emoji  1. Buka aplikasi Pages / Notes pada Macbook. 2. Klik pada Menubar Edit --> Pilih Emoji and Symbols a...