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.
}
}
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
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
Reviewed by andri aditya
on
December 15, 2018
Rating:
Cara downloadnya gmana ?
ReplyDelete