Membuat Aplikasi Crud Java Sederhana Menggunakan Mysql

Dalam postingan kali ini saya akan mencoba menjelaskan bagaimana cara membuat aplikasi crud sederhana java . dalam tutorial ini saya menggunakan database mysql XAMPP . bila belum memilikinya silahkan download di link ini. oke... mari kita mulai tutorialnya.

Membuat Database di XAMPP
bila sudah di instal XAMPPnya kemudian jalankan dan start pada bagian Apache dan MySQLnya saja . setelah itu buka web browser yang kalian miliki (contoh : Chrome, Mozila ,dll) > kemudian ketik url localhost/phpmyadmin > klik New di pokok kiri atas > dan masukan nama databasenya "db_biodata" > kemudian buat table dengan nama table "tb_biodata" > samakan type data dan valuenya dengan gambar di bawah ini


Membuat Project baru
Buka aplikasi Netbeans IDE pada bagian kiri pojok atas ada tulisan File . lalu klik File > New Project > pilih java Application > kemudian klik Next > dan buat project "biodata" > Finish.

Membuat Form Baru
Cara membuat form baru yaitu buka project yang sudah kita buat sebelumnya > Source Packages > kemudian klik kanan pada folder biodata > New JFrame > dan masukan nama formnya "form_crud.java" > Finish .


kemudian desainlah tampilan form_crud.java dengan menambahkan 5 buah Label , 4 buah Text Field, 3 buah Button dan 1 buah Table hingga desainnya seperti gambar di bawah ini.
setelah itu ubah nama variable TextFieldnya dengan nama tkode, tnama, talamat, tnotel.

Menambahkan Library Mysql

fungsi library ini yaitu menyambungkan database dengan User Interface yang akan kita buat . klik kanan folder Libraries yang ada di dalam project > add library > pilih MySQL JDBC Driver .





Membuat Source Code nya
tambahkan source code yang diperlukan saja . sudah saya tandakan mana saja yang perlu ditambahkan
/*
* 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 biodata;
/////ketik koding di bawah ini
import java.sql.Connection;
import java.sql.Statement;
import java.sql.DriverManager;
import java.sql.ResultSet;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
////sampe sini
/**
*
* @author Fajar
*/
public class form_crud extends javax.swing.JFrame {
/////ketik koding di bawah ini
Connection con;
Statement stat;
ResultSet res;
String kode;
////sampe sini
/**
* Creates new form form_crud
*/
public form_crud() {
initComponents();
/////ketik koding di bawah ini
tampilkan_data();
////sampe sini
}
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jPanel1 = 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 = new javax.swing.JTextField();
tnama = new javax.swing.JTextField();
talamat = new javax.swing.JTextField();
tnotel = new javax.swing.JTextField();
jScrollPane1 = new javax.swing.JScrollPane();
jTable1 = new javax.swing.JTable();
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
jButton3 = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());
jPanel1.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());
jLabel1.setFont(new java.awt.Font("Tahoma", 1, 24)); // NOI18N
jLabel1.setText("Biodata");
jPanel1.add(jLabel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(200, 0, 100, 40));
jLabel2.setText("Kode");
jPanel1.add(jLabel2, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 50, -1, -1));
jLabel3.setText("Nama");
jPanel1.add(jLabel3, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 80, -1, -1));
jLabel4.setText("Alamat");
jPanel1.add(jLabel4, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 110, -1, -1));
jLabel5.setText("No Telepon");
jPanel1.add(jLabel5, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 140, -1, -1));
jPanel1.add(tkode, new org.netbeans.lib.awtextra.AbsoluteConstraints(100, 50, 250, -1));
jPanel1.add(tnama, new org.netbeans.lib.awtextra.AbsoluteConstraints(100, 80, 250, -1));
jPanel1.add(talamat, new org.netbeans.lib.awtextra.AbsoluteConstraints(100, 110, 250, -1));
jPanel1.add(tnotel, new org.netbeans.lib.awtextra.AbsoluteConstraints(100, 140, 250, -1));
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"
}
));
jTable1.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jTable1MouseClicked(evt);
}
});
jScrollPane1.setViewportView(jTable1);
jPanel1.add(jScrollPane1, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 200, -1, 240));
jButton1.setText("Simpan");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
jPanel1.add(jButton1, new org.netbeans.lib.awtextra.AbsoluteConstraints(110, 170, -1, -1));
jButton2.setText("Ubah");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton2ActionPerformed(evt);
}
});
jPanel1.add(jButton2, new org.netbeans.lib.awtextra.AbsoluteConstraints(200, 170, 70, -1));
jButton3.setText("Hapus");
jButton3.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton3ActionPerformed(evt);
}
});
jPanel1.add(jButton3, new org.netbeans.lib.awtextra.AbsoluteConstraints(290, 170, -1, -1));
getContentPane().add(jPanel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 470, 460));
pack();
}// </editor-fold>
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
simpan_data();
tampilkan_data();
reset();// TODO add your handling code here:
}
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
ubah_data();
tampilkan_data();
reset();// TODO add your handling code here:
}
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
hapus_data();
tampilkan_data();
reset();// TODO add your handling code here:
}
private void jTable1MouseClicked(java.awt.event.MouseEvent evt) {
try{
int row = jTable1.getSelectedRow();
tkode.setText(jTable1.getValueAt(row, 0).toString());
tnama.setText(jTable1.getValueAt(row, 1).toString());
talamat.setText(jTable1.getValueAt(row, 2).toString());
tnotel.setText(jTable1.getValueAt(row, 3).toString());
}catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}
}
////ketik koding di bawah ini
private void koneksi(){
try{
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost/db_biodata","root","");
stat = con.createStatement();
}catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}
}
private void simpan_data(){
koneksi();
try{
stat.executeUpdate("INSERT INTO tb_biodata values("
+ "'" + tkode.getText() + "',"
+ "'" + tnama.getText() + "',"
+ "'" + talamat.getText()+ "',"
+ "'" + tnotel.getText()+"')");
stat.close();
reset();
}catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}
}
private void ubah_data(){
koneksi();
try{
stat.executeUpdate("UPDATE tb_biodata SET "
+ "kode ='"+tkode.getText()+ "',"
+ "nama ='"+tnama.getText()+"',"
+ "alamat ='"+talamat.getText()+ "',"
+ "telepon ='"+tnotel.getText()+"' "
+ "Where "
+ "kode ='"+tkode.getText()+"'");
stat.close();
reset();
}catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}
}
private void hapus_data(){
koneksi();
try{
stat.executeUpdate("DELETE FROM tb_biodata Where kode ='"+tkode.getText()+"'");
stat.close();
reset();
}catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}
}
private void tampilkan_data(){
DefaultTableModel dtm = new DefaultTableModel();
dtm.addColumn("Kode");
dtm.addColumn("Nama");
dtm.addColumn("Alamat");
dtm.addColumn("Telepon");
try{
koneksi();
ResultSet res = stat.executeQuery("select * from tb_biodata");
while(res.next()){
dtm.addRow(new Object[]{
res.getString(1),
res.getString(2),
res.getString(3),
res.getString(4)
});
}
jTable1.setModel(dtm);
}catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}
}
private void reset(){
try{
tkode.setText("");
tnama.setText("");
talamat.setText("");
tnotel.setText("");
}catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}
}
////////sampe sini
/**
* @param args the command line arguments
*/
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(form_crud.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(form_crud.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(form_crud.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(form_crud.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
}
//</editor-fold>
/* Create and display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new form_crud().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JButton jButton3;
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.JPanel jPanel1;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTable jTable1;
private javax.swing.JTextField talamat;
private javax.swing.JTextField tkode;
private javax.swing.JTextField tnama;
private javax.swing.JTextField tnotel;
// End of variables declaration
}
view raw form_crud.java hosted with ❤ by GitHub


atau download source codenya di Link Ini. Selamat Mencoba ^_^

Komentar

Popular Posts

Organisasi File

Tugas Statistika 1

SISTEM INFORMASI MANUFAKTUR