Cara membuat aplikasi form penggajian pengawai pada java netbeans mysql


Cara membuat aplikasi form penggajian  pengawai pada java netbeans mysql.





Pertemuan kali ini, admin ruang teknologi akan membagikan cara membuat aplikasi penggajian karyawan menggunakan netbeans dan mysql. Disini saya akan memakai xampp untuk mengakses mysqlnya karena gratis dan mudah digunakan. Kalian juga bisa mendownload filenya di akhir post.

membuat database untuk menyimpan data kita nanti


Yang pertama kita lakukan adalah membuat databasenya dahulu. Maka buka phpmyadmin kalian lalu buat data base denan nama karyawan . setelah membuat databasenya, kita akan membuat tabel baru dengan nama tabelgaji, isi seperti dibawah ini.
Nama
Jenis
panjang
NIP
int
10
Nama
Varchar
50
Jabatan
VARCHAR
20
Gapok
Int
10
Transport
Int
10
Gaber
Int
10


memulai membuat project java 


Bila kalian sudah membuat databasenya. Proses selanjutnya adalah memBuat project baru dengan nama aplikasipenggajian. ingat Pada bagian create main class jangan dicentang!



Karena yang perlu pertama kali dilakukan untuk menghubungkan data kita di mysql dengan aplikasi netbeans kita akan membuat package baru  di project tadi dengan nama koneksi.
 
Buat class dengan nama dbkoneksi di package koneksi tadi untuk menampung kode koneksi yang akan kita buat.
 
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package koneksi;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import javax.swing.JOptionPane;
import static sun.rmi.transport.TransportConstants.Return;

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

Copy kode tersebut di class dbkoneksi tadi.
Selanjutnya buat lagi package baru dengan nama penggajian. Dan buat jframe di dalamnya dengan nama formpenggajian.

Buat aplikasi seperti di gambar

Jangan lupa untuk mengganti variabel nya

Keterangan
NO
variabel
1
txtnip
2
txtnama
3
CmBoxJabatan
4
txtgapok
5
txttrans
6
txtgaber
7
btnSave
8
btnReset
9
btnUpdate
10
btnClear
11
btnKeluar
12
tblgaji

Bila sudah diganti, selanjutnya adalah yang bikin pusing yaitu coding.
Pertama import class class yang diperlukan. Taruh di bawah
package karyawan;
 

import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
import koneksi.Db_koneksi;

Paste kode berikut pada bawah  bagian deklarasi class
public class Form_Gaji extends javax.swing.JFrame {

 
//membuat clas DefaultTableModel
    private DefaultTableModel model;
    String nip, nama, jabatan;
    int gapok, transport,gaber;



setelah itu, kita akan membuat agar table yang kita buat selaras dengan data base.
Paste kode di bawah public Form_Gaji() {

 
model = new DefaultTableModel();
       tblgaji.setModel(model);
       model.addColumn("NIP");
       model.addColumn("Nama");
       model.addColumn("Jabatan");
       model.addColumn("Gaji Pokok");
       model.addColumn("Transport");
       model.addColumn("Gaji Bersih");
        
      getData();  
Buat class baru, tetapi kita membuatnya langsung pada frame formpenggajian ini(class berada di dalam frame formpenggajian).

  


private void getData() {
       
    
           model.getDataVector().removeAllElements();
    model.fireTableDataChanged();
   
    try {
   
    Statement stat = (Statement) Db_koneksi.getKoneksi().createStatement();
    String sql= "Select * from tabelgaji where 1";
    ResultSet res = stat.executeQuery(sql);
   
    while(res.next()){
        Object[] obj = new Object[6];
        obj[0] = res.getString("NIP");
        obj[1] = res.getString("Nama");
        obj[2] = res.getString("Jabatan");
        obj[3] = res.getString("Gapok");
        obj[4] = res.getString("Transport");
        obj[5] = res.getString("Gaber");
       
        model.addRow(obj);
    }
    }catch(SQLException err){
        JOptionPane.showMessageDialog(null, err.getMessage()); //To change body of generated methods, choose Tools | Templates.
    }
       
Taruh saja di paling bawah kode. Kita coba dulu run projek kita(F6) coba kalian cek apakah tabel tadi akan terisi kode. Seperti gambar ini

Buat lagi class beru dan letakan paling bawah seperti tadi
  public void loadData(){
        nip =  txtnip.getText();
        nama = (String) txtnama.getText();
        jabatan = (String) CmBoxJabatan.getSelectedItem();
        gapok = Integer.parseInt(txtgapok.getText());
        transport = Integer.parseInt(txttrans.getText());
        gaber = Integer.parseInt(txtgaber.getText());
        
    }

Kita akan membuat class untuk menampung kode yang berfungsi untuk combo box pada CmBoxJabatan. Silahkan paste kode berikut
   public void LoadGaji(){
        jabatan =""+ CmBoxJabatan.getSelectedItem();
        switch(jabatan){
                case "Manager":
                    gapok = 5000000;
                break;
                case "Asisten Manager":
                    gapok = 4500000;
                break;
                case "Kepala HRD":
                    gapok = 4000000;
                break;
                case "Staf Keuangan":
                    gapok = 3500000;
                break;
                case "Karyawan":
                    gapok = 3000000;
                break;
                case "Office Boy":
                    gapok = 2500000;
                break;
        }
        
        transport = (int) ( gapok*0.1);
        gaber = gapok + transport;
        txtgapok.setText(""+gapok);
        txttrans.setText(""+transport);
        txtgaber.setText(""+gaber);
    }
  
Selanjutnya kita akann memanggil class tadi pada pada combobox jabatan, klik kanan>event>actions>actionsperfomed.
LoadGaji();

Lalu, kita akan membuat fungsi class save berikut kodenya

  public void saveData() {
        LoadGaji();
        try{
            Statement stat = (Statement) Db_koneksi.getKoneksi().createStatement();
            String sql = "insert into `tabelgaji` (NIP,Nama,Jabatan,Gapok,Transport,Gaber)" + "values (?,?,'"+ jabatan +"','"+ gapok +"','"+ transport +"','"+ gaber +"')";
            PreparedStatement p = (PreparedStatement) Db_koneksi.getKoneksi().prepareStatement(sql);
             p.setString(1, txtnip.getText().trim());
     p.setString(2, txtnama.getText().trim());
            p.executeUpdate();
            getData();
        }catch(SQLException err){
            JOptionPane.showMessageDialog(null, err.getMessage());
        }
    } 

Panggil pada button save dengan cara klik kanan>event>actions>actionsperfomed.

    saveData();

kita run lagi projectnya. Silahkan inputkan dan coba save. Bila berhasil selamat! Anda telah berhasil membuat insert pada database lewat netbeans.

Lanjutkang ngoding, buat juga class reset

   
  

    private void Reset() {
       nip = "";
        nama = "";
        jabatan = "";
        gapok = 0;
        transport = 0;
        gaber = 0;
        txtnip.setText(nip);
txtnama.setText(nama);
txtgapok.setText("");
txttrans.setText("");
txtgaber.setText("");
//To change body of generated methods, choose Tools | Templates.
    }
   
                  
    /**
     *
     */
   

Panggil pada button reset dengan cara klik kanan>event>actions>actionsperfomed.
Reset()

Sebelum membuat update data, kita harus bisa mengambil data dari tabel ke textfield. Maka buat fungsinya dahulu

  private void PilihData() {
        int i = tblgaji.getSelectedRow();
        if (i == -1) {
            return;
        }
        txtnip.setText(""+model.getValueAt(i, 0));
        txtnama.setText(""+model.getValueAt(i, 1));
        CmBoxJabatan.setSelectedItem(""+model.getValueAt(i,2));
        txtgapok.setText(""+model.getValueAt(i,3));
        txttrans.setText(""+model.getValueAt(i,4));
        txtgaber.setText(""+model.getValueAt(i,5));
        
    }
Panggil pada button reset dengan cara klik kanan>event>mouse>mousecliced.

PilihData()

Nah selanjutnya kita akan membuat updatenya kodenya yaitu:

 
    public void UpdateData() {
  //manggil load menentukan kondisi atau variabel       
        loadData();
        try {
           Statement stat = (Statement) Db_koneksi.getKoneksi().createStatement();
           String sql = "UPDATE tabelgaji SET Nama    =  '"+ nama +"',"
                                            + "Jabatan  =  '"+ jabatan +"',"
                                            + "Gapok    =   '"+ gapok +"',"
                                            + "Transport =  '"+ transport +"',"
                                            + "Gaber    =   '"+ gaber +"' WHERE NIP = '"+ nip +"'";
           PreparedStatement p = (PreparedStatement) Db_koneksi.getKoneksi().prepareStatement(sql);
        p.executeUpdate();
        getData();
        Reset();
        JOptionPane.showMessageDialog(null, "update berhasil");
        } catch(SQLException err) { JOptionPane.showMessageDialog(null, err.getMessage());
        } }

Panggil pada button update dengan cara klik kanan>event>actions>actionsperfomed.
UpdateData()

Jangan lupa membuat fungsi delete data, kodenya yaitu:

  public void hapusData() {
loadData();
//menampilkan pesan konfirmasi OK dan Cancel sebelum dulakukan proses delete
int pesan = JOptionPane.showConfirmDialog(null, "anda yakin ingin menghapus data"+ nip +"?","konfirmasi",
        JOptionPane.OK_CANCEL_OPTION);
//jika user memilih OK maka Delete akan dilakukan
if (pesan == JOptionPane.OK_OPTION){
 try{
  Statement stat = (Statement) Db_koneksi.getKoneksi().createStatement();
  String sql = "DELETE FROM tabelgaji  WHERE NIP = '"+ nip +"'";
  PreparedStatement p = (PreparedStatement) Db_koneksi.getKoneksi().prepareStatement (sql);
p.executeUpdate();


getData();
Reset();
JOptionPane.showMessageDialog(null, "Delete berhasil");
}
catch(SQLException err) { JOptionPane.showMessageDialog(null, err.getMessage());
        }
} }

Panggil pada button delete dengan cara klik kanan>event>actions>actionsperfomed.
hapusData()

terakhir kita akan membuat kode keluarnya pada button keluar dengan cara klik kanan>event>actions>actionsperfomed. Masukan kode berikut

this.dispose();

Penutup


nah, sekarang tinggal run project yang telah kita buat(F6). Bila ada yang gagal silahkan tanyakan di komentar. Atau kalian bisa mendownload source code aplikasi penggajian karyawan ini.
Begitulah bagaimana cara membuat aplikasi penggajian dengan netbean+mysql. Kalian juga bisa mencari contoh turtorial aplikasi aplikasi lain di blog ini.

untuk source code bisa kalian download di sini
form penggajian karyawan java netbean

password = ruangtek.blogspot.com


Cara membuat aplikasi form penggajian pengawai pada java netbeans mysql Cara membuat aplikasi form penggajian  pengawai pada java netbeans mysql Reviewed by andri aditya on December 15, 2018 Rating: 5

1 comment:

Powered by Blogger.