0% found this document useful (0 votes)
2 views4 pages

Form Mahasiswa

The document contains a Java Swing application for managing student data, including functionalities to add, edit, delete, and display student information in a table format. It connects to a database to perform CRUD operations on a 'mahasiswa' (student) table. The user interface includes text fields for input and buttons for actions, with event listeners to handle user interactions.

Uploaded by

Cursedhelmet
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)
2 views4 pages

Form Mahasiswa

The document contains a Java Swing application for managing student data, including functionalities to add, edit, delete, and display student information in a table format. It connects to a database to perform CRUD operations on a 'mahasiswa' (student) table. The user interface includes text fields for input and buttons for actions, with event listeners to handle user interactions.

Uploaded by

Cursedhelmet
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/ 4

package mahasiswa;

import java.awt.event.*;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;

public class FormMahasiswa extends JFrame {


private String [] judul = {"NIM", "Nama","Alamat"};
DefaultTableModel df;
JTable tab = new JTable();
JScrollPane scp = new JScrollPane();
JPanel pnl = new JPanel();
JLabel lblnama = new JLabel("Nama");
JTextField txnama = new JTextField(20);
JLabel lblnim = new JLabel("NIM");
JTextField txnim = new JTextField(10);
JLabel lblalamat = new JLabel("Alamat");
JTextArea alamat = new JTextArea();
JScrollPane sca = new JScrollPane(alamat);
JButton btadd = new JButton("Simpan");
JButton btnew = new JButton ("Baru");
JButton btdel = new JButton ("Hapus");
JButton btedit = new JButton ("Ubah");

FormMahasiswa(){
super("Data Mahasiswa");
setSize(460, 300);
pnl.setLayout(null);
pnl.add(lblnim);
lblnim.setBounds(20, 10, 80, 20);
pnl.add(txnim);
txnim.setBounds(105, 10, 100, 20);
pnl.add(lblnama);
lblnama.setBounds(20, 33, 80, 20);
pnl.add(txnama);
txnama.setBounds(105, 33, 175, 20);
pnl.add(lblalamat);
lblalamat.setBounds(20, 56, 80, 20);
pnl.add(sca);
sca.setBounds(105, 56, 175, 45);

pnl.add(btnew);
btnew.setBounds(300, 10, 125, 20);
btnew.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e){
btnewAksi(e);
}
});
pnl.add(btadd);
btadd.setBounds(300, 33, 125, 20);
btadd.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
btaddAksi(e);
}
});
pnl.add(btedit);
btedit.setBounds(300, 56, 125, 20);
btedit.setEnabled(false);
btedit.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e){
bteditAksi(e);
}
});
pnl.add(btdel);
btdel.setBounds(300, 79, 125, 20);
btdel.setEnabled(false);
btdel.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
btdelAksi(e);
}
});
df = new DefaultTableModel(null, judul);
tab.setModel(df);
scp.getViewport().add(tab);
tab.setEnabled(true);
tab.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent evt) {
tabMouseClicked(evt);
}
});
scp.setBounds(20, 110, 405, 130);
pnl.add(scp);
getContentPane().add(pnl);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}

void loadData(){
try{
Connection cn = new connecDB().getConnect();
Statement st = cn.createStatement();
String sql = "SELECT * FROM mahasiswa";
ResultSet rs = st.executeQuery(sql);
while (rs.next()){
String nim, nama, alamat;
nim = rs.getString("NIM");
nama = rs.getString("Nama");
alamat = rs.getString("Alamat");
String [] data = {nim, nama, alamat};
df.addRow(data);
}
rs.close();
cn.close();
} catch (SQLException ex) {
ex.printStackTrace();
}
}
void clearTable(){
int numRow = df.getRowCount();
for(int i=0; i<numRow; i++) {
df.removeRow(0);
}
}
void clearTextField(){
txnim.setText(null);
txnama.setText(null);
alamat.setText(null);
}

void simpanData(Mahasiswa M){


try{
Connection cn = new connecDB().getConnect();
Statement st = cn.createStatement();
String sql = "INSERT INTO mahasiswa (NIM, Nama, Alamat) " +
"VALUES ('" + M.getNIM()+ "', '" + M.getNama() + "', '" +
M.getAlamat() +"')";
int result = st.executeUpdate(sql);
cn.close();
JOptionPane.showMessageDialog(null, "Data Berhasil Disimpan",
"Info Proses", JOptionPane.INFORMATION_MESSAGE);
String [] data = {M.getNIM(), M.getNama(), M.getAlamat()};
df.addRow(data);
} catch (SQLException ex) {
ex.printStackTrace();
}
}
void hapusData(String nim){
try{
Connection cn = new connecDB().getConnect();
Statement st = cn.createStatement();
String sql = "DELETE FROM mahasiswa WHERE NIM = '"+nim+"'";
int result = st.executeUpdate(sql);
cn.close();
JOptionPane.showMessageDialog(null,"Data Berhasil Dihapus", "Info Proses",
JOptionPane.INFORMATION_MESSAGE);
df.removeRow(tab.getSelectedRow());
clearTextField();
} catch (SQLException ex){
ex.printStackTrace();
}
}

void ubahData(Mahasiswa M, String nim) {


try{
Connection cn = new connecDB().getConnect();
Statement st = cn.createStatement();
String sql = "UPDATE mahasiswa SET NIM='"+ M.getNIM()+"', Nama ='" +
M.getNama()+"', Alamat='" + M.getAlamat()+"' WHERE NIM='" +nim+"'";
int result = st.executeUpdate(sql);
cn.close();
JOptionPane.showMessageDialog(null, "Data Berhasil Diubah","Info Proses",
JOptionPane.INFORMATION_MESSAGE);
clearTable();
loadData();
} catch (SQLException ex){
ex.printStackTrace();
}
}
private void btnewAksi(ActionEvent evt){
txnim.setText(null);
txnama.setText(null);
alamat.setText(null);
btedit.setEnabled(false);
btdel.setEnabled(false);
btadd.setEnabled(true);
}
private void btaddAksi(ActionEvent evt){
Mahasiswa M = new Mahasiswa();
M.setNIM(txnim.getText());
M.setNama(txnama.getText());
M.setAlamat(alamat.getText());
simpanData(M);
}

private void btdelAksi(ActionEvent evt){


int status;
status = JOptionPane.showConfirmDialog(null,"Yakin data akan dihapus?",
"Konfirmasi",JOptionPane.OK_CANCEL_OPTION);
if(status == 0){
hapusData(txnim.getText());
}
}
private void bteditAksi(ActionEvent evt){
Mahasiswa M = new Mahasiswa();
M.setNIM(txnim.getText());
M.setNama(txnama.getText());
M.setAlamat(alamat.getText());
ubahData(M, tab.getValueAt(tab.getSelectedRow(),0).toString());
}
private void tabMouseClicked(MouseEvent evt){
btedit.setEnabled(true);
btdel.setEnabled(true);
btadd.setEnabled(false);
String nim, nama, alt;
nim = tab.getValueAt(tab.getSelectedRow(), 0).toString();
nama = tab.getValueAt(tab.getSelectedRow(), 1).toString();
alt = tab.getValueAt(tab.getSelectedRow(), 2).toString();
txnim.setText(nim);
txnama.setText(nama);
alamat.setText(alt);
}

public static void main(String [] args) {


new FormMahasiswa().loadData();
}
}

You might also like