0% found this document useful (0 votes)
37 views12 pages

GX

This Java code defines a class called "barang" that extends the JFrame class. It contains methods for initializing GUI components, connecting to a MySQL database to retrieve product data and populate a JTable, and handling button click events. The class contains fields and methods for working with product data in a database, displaying it in a table, and allowing the user to add, update, and delete database records.

Uploaded by

ilhamuvi085
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
37 views12 pages

GX

This Java code defines a class called "barang" that extends the JFrame class. It contains methods for initializing GUI components, connecting to a MySQL database to retrieve product data and populate a JTable, and handling button click events. The class contains fields and methods for working with product data in a database, displaying it in a table, and allowing the user to add, update, and delete database records.

Uploaded by

ilhamuvi085
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 12

package PBO;

import java.awt.event.KeyEvent;
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.Statement;
import java.sql.SQLException;
import java.sql.ResultSet;
import java.util.logging.Level;
import java.util.logging.Logger;

import javax.swing.table.DefaultTableModel;
import javax.swing.JOptionPane;

public class barang extends javax.swing.JFrame {

public barang() {
initComponents();
this.tabel_barang();
this.textfieldfals();

btsave.setEnabled(false);
btupdate.setEnabled(false);
btdelete.setEnabled(false);
}

public void tabel_barang(){


try {
Connection
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/pencatatan_barang","ro
ot","");
Statement stat=con.createStatement();
ResultSet rs=stat.executeQuery("select*from barang");

String[] column={"KODE BARANG","NAMA BARANG","STOCK","STOCK MIN","HARGA


JUAL","HARGA BELI"};
DefaultTableModel tabela=new DefaultTableModel();
tabela.setColumnIdentifiers(column);
table_barang.setModel(tabela);
while(rs.next()) {
tabela.addRow(new Object[]{
rs.getString(1),
rs.getString(2),
rs.getString(3),
rs.getString(4),
rs.getString(5),
rs.getString(6),
});
}

} catch (Exception e) {
JOptionPane.showMessageDialog(null, e.getMessage ());
}
}

@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {

jScrollPane2 = new javax.swing.JScrollPane();


jTable1 = new javax.swing.JTable();
jScrollPane1 = new javax.swing.JScrollPane();
jPanel1 = new javax.swing.JPanel();
jPanel2 = new javax.swing.JPanel();
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
jLabel4 = new javax.swing.JLabel();
jLabel5 = new javax.swing.JLabel();
tkode_barang = new javax.swing.JTextField();
tnama_barang = new javax.swing.JTextField();
tstock = new javax.swing.JTextField();
tstock_min = new javax.swing.JTextField();
tharga_jual = new javax.swing.JTextField();
btnew = new javax.swing.JButton();
btsave = new javax.swing.JButton();
jScrollPane3 = new javax.swing.JScrollPane();
table_barang = new javax.swing.JTable();
btupdate = new javax.swing.JButton();
btexit = new javax.swing.JButton();
btdelete = new javax.swing.JButton();
jLabel6 = new javax.swing.JLabel();
tharga_beli = new javax.swing.JTextField();

jTable1.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
{null, null, null, null},
{null, null, null, null},
{null, null, null, null},
{null, null, null, null}
},
new String [] {
"Title 1", "Title 2", "Title 3", "Title 4"
}
));
jScrollPane2.setViewportView(jTable1);

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

jLabel1.setText("KODE BARANG");

jLabel2.setText("NAMA BARANG");

jLabel3.setText("STOCK");

jLabel4.setText("STOCK MIN");

jLabel5.setText("HARGA JUAL");

tkode_barang.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
tkode_barangActionPerformed(evt);
}
});
tnama_barang.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
tnama_barangActionPerformed(evt);
}
});

tstock.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
tstockActionPerformed(evt);
}
});

tstock_min.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
tstock_minActionPerformed(evt);
}
});
tstock_min.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyTyped(java.awt.event.KeyEvent evt) {
tstock_minKeyTyped(evt);
}
});

tharga_jual.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
tharga_jualActionPerformed(evt);
}
});

btnew.setText("NEW");
btnew.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnewActionPerformed(evt);
}
});

btsave.setText("SAVE");
btsave.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btsaveActionPerformed(evt);
}
});

table_barang.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
{null, null, null, null},
{null, null, null, null},
{null, null, null, null},
{null, null, null, null}
},
new String [] {
"Title 1", "Title 2", "Title 3", "Title 4"
}
));
table_barang.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
table_barangMouseClicked(evt);
}
});
jScrollPane3.setViewportView(table_barang);

btupdate.setText("UPDATE");
btupdate.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btupdateActionPerformed(evt);
}
});

btexit.setText("EXIT");
btexit.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btexitActionPerformed(evt);
}
});

btdelete.setText("DELETE");
btdelete.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btdeleteActionPerformed(evt);
}
});

jLabel6.setText("HARGA BELI");

tharga_beli.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
tharga_beliActionPerformed(evt);
}
});

javax.swing.GroupLayout jPanel2Layout = new


javax.swing.GroupLayout(jPanel2);
jPanel2.setLayout(jPanel2Layout);
jPanel2Layout.setHorizontalGroup(

jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addGap(21, 21, 21)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout
.Alignment.LEADING)
.addComponent(jScrollPane3,
javax.swing.GroupLayout.PREFERRED_SIZE, 431,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLa
yout.Alignment.TRAILING, false)
.addGroup(javax.swing.GroupLayout.Alignment.LEADING,
jPanel2Layout.createSequentialGroup()
.addGap(10, 10, 10)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing
.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createParallelGroup(javax.s
wing.GroupLayout.Alignment.TRAILING)
.addComponent(jLabel2)
.addComponent(jLabel1,
javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel3,
javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel4,
javax.swing.GroupLayout.Alignment.LEADING))
.addComponent(jLabel5)
.addComponent(jLabel6))
.addGap(33, 33, 33)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing
.GroupLayout.Alignment.LEADING, false)
.addComponent(tkode_barang,
javax.swing.GroupLayout.DEFAULT_SIZE, 288, Short.MAX_VALUE)
.addComponent(tnama_barang)
.addComponent(tstock)
.addComponent(tstock_min)
.addComponent(tharga_jual)
.addComponent(tharga_beli,
javax.swing.GroupLayout.DEFAULT_SIZE, 288, Short.MAX_VALUE)))
.addGroup(javax.swing.GroupLayout.Alignment.LEADING,
jPanel2Layout.createSequentialGroup()
.addGap(4, 4, 4)
.addComponent(btnew)
.addGap(27, 27, 27)
.addComponent(btsave)
.addGap(29, 29, 29)
.addComponent(btupdate)
.addGap(32, 32, 32)
.addComponent(btdelete)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlace
ment.RELATED, 27, Short.MAX_VALUE)
.addComponent(btexit))))
.addContainerGap(411, Short.MAX_VALUE))
);
jPanel2Layout.setVerticalGroup(

jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addGap(22, 22, 22)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout
.Alignment.BASELINE)
.addComponent(jLabel1)
.addComponent(tkode_barang,
javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout
.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(tnama_barang,
javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout
.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(tstock, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout
.Alignment.BASELINE)
.addComponent(jLabel4)
.addComponent(tstock_min,
javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED
, 19, Short.MAX_VALUE)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout
.Alignment.BASELINE)
.addComponent(jLabel5)
.addComponent(tharga_jual,
javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout
.Alignment.BASELINE)
.addComponent(jLabel6)
.addComponent(tharga_beli,
javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(25, 25, 25)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout
.Alignment.BASELINE)
.addComponent(btnew)
.addComponent(btsave)
.addComponent(btupdate)
.addComponent(btdelete)
.addComponent(btexit))
.addGap(31, 31, 31)
.addComponent(jScrollPane3, javax.swing.GroupLayout.PREFERRED_SIZE,
114, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(466, 466, 466))
);

javax.swing.GroupLayout jPanel1Layout = new


javax.swing.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(

jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGap(87, 87, 87)
.addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
);
jPanel1Layout.setVerticalGroup(

jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGap(22, 22, 22)
.addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(27, Short.MAX_VALUE))
);

javax.swing.GroupLayout layout = new


javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(130, 130, 130)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING, false)
.addComponent(jScrollPane1)
.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addContainerGap(16, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addGap(29, 29, 29)
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED
, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE,
173, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(147, 147, 147))
);

pack();
}// </editor-fold>

private void tkode_barangActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:


}

private void tnama_barangActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:


}

private void tstockActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:


}

private void tstock_minActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:


}

private void tharga_jualActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:


}

private void btnewActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:


this.textfieldtrue();
this.bersihdata();
btsave.setEnabled(true);

}
private void btsaveActionPerformed(java.awt.event.ActionEvent evt) {

try {
this.simpandata();
} catch (SQLException ex) {
Logger.getLogger(barang.class.getName()).log(Level.SEVERE, null, ex);
}

private void btupdateActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:


this.update_data();

private void btexitActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:


System.exit(0);
}

private void btdeleteActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:


this.delete_data();
}

private void table_barangMouseClicked(java.awt.event.MouseEvent evt) {

int baris;

baris=table_barang.getSelectedRow();

tkode_barang.setText(String.valueOf(table_barang.getValueAt(baris, 0)));
tnama_barang.setText(String.valueOf(table_barang.getValueAt(baris, 1)));
tstock.setText(String.valueOf(table_barang.getValueAt(baris, 2)));
tstock_min.setText(String.valueOf(table_barang.getValueAt(baris, 3)));
tharga_jual.setText(String.valueOf(table_barang.getValueAt(baris, 4)));
tharga_beli.setText(String.valueOf(table_barang.getValueAt(baris, 5)));
btupdate.setEnabled(true);
btdelete.setEnabled(true);
this.textfieldtrue();
btsave.setEnabled(false);

private void tstock_minKeyTyped(java.awt.event.KeyEvent evt) {

// TODO add your handling code here:


filterhuruf(evt);
}

private void tharga_beliActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:


}
public void textfieldfals(){
tkode_barang.setEnabled(false);
tnama_barang.setEnabled(false);
tstock.setEnabled(false);
tstock_min.setEnabled(false);
tharga_jual.setEnabled(false);
tharga_beli.setEnabled(false);
}
public void textfieldtrue(){
tkode_barang.setEnabled(true);
tnama_barang.setEnabled(true);
tstock.setEnabled(true);
tstock_min.setEnabled(true);
tharga_jual.setEnabled(true);
tharga_beli.setEnabled(true);
}
public void bersihdata(){
tkode_barang.setText("");
tnama_barang.setText("");
tstock.setText("");
tstock_min.setText("");
tharga_jual.setText("");
tharga_beli.setText("");
}
public void simpandata() throws SQLException{
if(tkode_barang.getText().equals("")||
tnama_barang.getText().equals("")||tstock.getText().equals("")||
tstock_min.getText().equals("")||tharga_jual.getText().equals("")){
JOptionPane.showMessageDialog(null,"Data tidak boleh kosong");
}else{
String kode_barang = (String) tkode_barang.getText();
String nama_barang = (String) tnama_barang.getText();
String stock = (String) tstock.getText();
String stock_min = (String) tstock_min.getText();
String harga_jual = (String) tharga_jual.getText();
String harga_beli = (String) tharga_beli.getText();
try {
Connection con=koneksi.getConnection();
Statement stat = con.createStatement();
int sikat = stat.executeUpdate("INSERT INTO barang VALUES('"
+ kode_barang +"','"
+ nama_barang + "','"
+ stock + "','"
+ stock_min +"','"
+ harga_jual +"','"
+ harga_beli + "') ");

if (sikat==1){
JOptionPane.showMessageDialog(null,"berhasil disimpan");
tabel_barang();
}else{
JOptionPane.showMessageDialog(null, "tidak berhasil disimpan");
}
}catch (Exception e){
JOptionPane.showMessageDialog(null, "inputan harus sesuai");
bersihdata();
}
}
}

void filterhuruf(KeyEvent a){


if(Character.isAlphabetic(a.getKeyChar())){
a.consume();
JOptionPane.showMessageDialog(null,"Hanya Angka");
}
}

public void update_data(){

try {
Connection con = koneksi.getConnection();
PreparedStatement stat = con.prepareStatement("Update barang set
nama_barang=?, stock=?, stock_min=?, harga_jual=?, harga_beli=? where
kode_barang=?");

stat.setString(1, tnama_barang.getText());
stat.setString(2, tstock.getText());
stat.setString(3, tstock_min.getText());
stat.setString(4, tharga_jual.getText());
stat.setString(5, tharga_beli.getText());
stat.setString(6, tkode_barang.getText());
stat.executeUpdate();
JOptionPane.showMessageDialog(null,"Data berhasil
diubah","Pesan",JOptionPane.INFORMATION_MESSAGE);
tabel_barang();
} catch (SQLException e){
System.out.println(e.getMessage());
}
}

public void delete_data(){


int OK=JOptionPane.showConfirmDialog(null, "Apakah anda yakin
ingin","Confirmation",JOptionPane.YES_NO_CANCEL_OPTION);
if(OK==0){
try {
Connection con=koneksi.getConnection();
String sql="delete from barang where kode_barang='"
+tkode_barang.getText()+"'";
PreparedStatement stat=con.prepareStatement(sql);
stat.executeUpdate();
JOptionPane.showMessageDialog(null, "Data berhasil dihapus");
tabel_barang();
} catch (SQLException ex) {

Logger.getLogger(barang.class.getName()).log(Level.SEVERE,null,ex);

}
}
}

public static void main(String args[]) {


/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code
(optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the
default look and feel.
* For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {

java.util.logging.Logger.getLogger(barang.class.getName()).log(java.util.logging.Le
vel.SEVERE, null, ex);
} catch (InstantiationException ex) {

java.util.logging.Logger.getLogger(barang.class.getName()).log(java.util.logging.Le
vel.SEVERE, null, ex);
} catch (IllegalAccessException ex) {

java.util.logging.Logger.getLogger(barang.class.getName()).log(java.util.logging.Le
vel.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {

java.util.logging.Logger.getLogger(barang.class.getName()).log(java.util.logging.Le
vel.SEVERE, null, ex);
}
//</editor-fold>
//</editor-fold>

/* Create and display the form */


java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new barang().setVisible(true);
}
});
}

// Variables declaration - do not modify


private javax.swing.JButton btdelete;
private javax.swing.JButton btexit;
private javax.swing.JButton btnew;
private javax.swing.JButton btsave;
private javax.swing.JButton btupdate;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JScrollPane jScrollPane2;
private javax.swing.JScrollPane jScrollPane3;
private javax.swing.JTable jTable1;
private javax.swing.JTable table_barang;
private javax.swing.JTextField tharga_beli;
private javax.swing.JTextField tharga_jual;
private javax.swing.JTextField tkode_barang;
private javax.swing.JTextField tnama_barang;
private javax.swing.JTextField tstock;
private javax.swing.JTextField tstock_min;
// End of variables declaration
}

You might also like