tutorial lanjutan java netbeans 8 : create read update delete

18
Tutorial Java tingkat lanjut : Membuat CRUD Mengunakan Java dan MySQL CRUD merupakan singkatan dari Create Read Update Delete (Buat Baca Perbarui Hapus) langkah pertama buat aplikasi baru untuk java, kemudian klik kanan pada folder aplikasi tersebut pilih new java pakage.. beri nama koneksi klik finish. dalam paket koneksi tambahkan tambahkan class java klik kanan pada paket koneksi pilih new java class.. beri nama koneksi.java. Fungsi class koneksi ini untuk mengkoneksikan aplikasi yang dibuat dengan database. Tuliskan code berikut pada class koneksi.java 1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 /* * 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.*; import javax.swing.JOptionPane; import com.mysql.jdbc.Driver; /** * * @author c13 */ public class koneksi { private static Connection mysqlkonek; public static Connection koneksiDB() throws SQLException{ if(mysqlkonek==null){ try { String url="jdbc:mysql://localhost:3306/belajar"; String user="root"; String pass=""; Sumber : http://www.carikode.com - 1

Upload: smk-negeri-6-malang

Post on 12-Apr-2017

402 views

Category:

Education


2 download

TRANSCRIPT

Page 1: Tutorial lanjutan java netbeans 8 : Create Read Update Delete

Tutorial Java tingkat lanjut : Membuat CRUD Mengunakan Java dan MySQL

CRUD merupakan singkatan dari Create Read Update Delete (Buat Baca Perbarui Hapus)

langkah pertama buat aplikasi baru untuk java, kemudian klik kanan pada folder aplikasi tersebut

pilih new java pakage..   beri nama koneksi klik finish.

dalam paket koneksi tambahkan tambahkan class java klik kanan pada paket koneksi pilih

new java class..  beri nama koneksi.java.

Fungsi class koneksi ini untuk mengkoneksikan aplikasi yang dibuat dengan database.

Tuliskan code berikut pada class koneksi.java

12345678910111213141516171819202122232425262728293031323334353637383940

/** 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.*;import javax.swing.JOptionPane;import com.mysql.jdbc.Driver; /**** @author c13*/public class koneksi {   private static Connection mysqlkonek;   public static Connection koneksiDB() throws SQLException{       if(mysqlkonek==null){               try {                   String url="jdbc:mysql://localhost:3306/belajar";                   String user="root";                   String pass="";                                      DriverManager.registerDriver(new com.mysql.jdbc.Driver());                   mysqlkonek = (Connection) DriverManager.getConnection(url,user,pass);                                                    } catch (Exception e) {                   JOptionPane.showMessageDialog(null,"gagal koneksi");               }              }              return mysqlkonek;          }}

Sumber : http://www.carikode.com - 1

Page 2: Tutorial lanjutan java netbeans 8 : Create Read Update Delete

jangan lupa membuat database dengan nama belajar.

Buat tabel dengan desain kolom (id_barang (int), nama_barang(text), jenis_barang(text), dan

distributor(text)).

desain tabel database

langkah kedua yaitu membuat paket baru dengan nama crud, caranya sama seperti di atas.

tambahkan JframeFrom..untuk mendesain form crud. Gunakan nama Crud untuk Jframe From,

desainnya seperti di bawah ini :

form crud menggunakan java

tambahkan r2xml.jar,  caranya download dulu http://gdurl.com/2H-i/download .  untuk menambahkan file r2xml .jar klik kanan pada folder library yang berada dalam paket aplikasi, pilih Add Jar/Folder dan pilih file r2xml.jar yang sudah di download tadi.  fungsi dari r2xml.jar ini untuk mengatur kolom jTable sesuai dengan kolom yang ada dalam database.

Sumber : http://www.carikode.com - 2

Page 3: Tutorial lanjutan java netbeans 8 : Create Read Update Delete

klik pada menu source yang ada di atas form dan tuliskan code berikut pada Class data_produk.

123456789101112

public class data_produk extends javax.swing.JFrame {    private void update_tabel(){        try {        java.sql.Connection conn =(java.sql.Connection)koneksi.koneksi.koneksiDB();        java.sql.Statement stm = conn.createStatement();        java.sql.ResultSet sql = stm.executeQuery("select * from barang");        jTable1.setModel(DbUtils.resultSetToTableModel(sql));             } catch (Exception e) {        }       }

ini berfungsi untuk mengupdate table, ketika menambah atau menghapus yang ada dalam table,

maka tabel tersebut dengan otomatis ter-update otomatis.

tambahkan syntak update_tabel(); di public data_produk.

1234

    public data_produk() {        initComponents();        update_tabel();    }

 embali pada form desain, klik kanan pada tabel yang sudah dibuat, pilih Events – Mouse –

mouseKliked.. setelah itu akan muncul form untuk diisikan perintah (code program) isikan code

berikut pada pad form jTable.

123456789101112131415161718192021222324

    private void jTable1MouseClicked(java.awt.event.MouseEvent evt) {                                             // TODO add your handling code here:        try {            int row =jTable1.getSelectedRow();            String tabel_klik=(jTable1.getModel().getValueAt(row, 0).toString());            java.sql.Connection conn =(java.sql.Connection)koneksi.koneksi.koneksiDB();            java.sql.Statement stm = conn.createStatement();            java.sql.ResultSet sql = stm.executeQuery("select * from barang where id_barang='"+tabel_klik+"'");            if(sql.next()){                String add1 = sql.getString("id_barang");                txt_id.setText(add1);                String add2 = sql.getString("nama_barang");                txt_nama.setText(add2);                String add3 = sql.getString("jenis_barang");                txt_jenis.setText(add3);                String add4 = sql.getString("distributor");                txt_distributor.setText(add4);                            }                    } catch (Exception e) {        }            }

Sumber : http://www.carikode.com - 3

Page 4: Tutorial lanjutan java netbeans 8 : Create Read Update Delete

code ini berfungsi untuk menampilkan semua data yang ada dalam tabel barang,

berikut penjelasan code program untuk jTabel di atas :

1234

int row =jTable1.getSelectedRow();            String tabel_klik=(jTable1.getModel().getValueAt(row, 0).toString());            java.sql.Connection conn =(java.sql.Connection)koneksi.koneksi.koneksiDB();            java.sql.Statement stm = conn.createStatement();

code ini digunakan untuk memanggil class koneksi yang telah dibuat tadi.

1 java.sql.ResultSet sql = stm.executeQuery("select * from barang where id_barang='"+tabel_klik+"'");

code ini digunakan untuk menampilkan  semua isi yang ada pada tabel barang, di mana data

yang ditampilkan berurutan sesuai dengan id _barang.

12345678

String add1 = sql.getString("id_barang");                txt_id.setText(add1);                String add2 = sql.getString("nama_barang");                txt_nama.setText(add2);                String add3 = sql.getString("jenis_barang");                txt_jenis.setText(add3);                String add4 = sql.getString("distributor");                txt_distributor.setText(add4);

kode ini digunakan untuk mengatur judul kolom yang ditampilkan pada form. ketika aplikasi

dijalankan akan dimunculkan form yang telah dibuat tadi, ketika salah satu data yang ada dalam

tabel di klik, maka isi dari data yang diklik tersebut akan muncul ke dalam panel editor.

melihat isi database

Sumber : http://www.carikode.com - 4

Page 5: Tutorial lanjutan java netbeans 8 : Create Read Update Delete

langkah ketiga buat code untuk mengaktifkan tombol simpan. caranya klik kanan pada tombol

simpan pilih event  Action actionPerformed. tuliskan kode berikut :

private void b_simpanActionPerformed(java.awt.event.ActionEvent evt) {                                                 // TODO add your handling code here:        try {        String sql = "insert into barang values('"+txt_id.getText()+"','"+txt_nama.getText()+"','"+txt_jenis.getText()+"','"+txt_distributor.getText()+"')";        java.sql.Connection conn = (java.sql.Connection) koneksi.koneksi.koneksiDB();        java.sql.PreparedStatement pst = conn.prepareStatement(sql);        pst.execute();        JOptionPane.showMessageDialog(null, "berhasil disimpan"); } catch (Exception e) {            JOptionPane.showMessageDialog(null, e);        }        update_tabel();        }

penjelasan :

String sql = "insert into barang values('"+txt_id.getText()+"','"+txt_nama.getText()+"','"+txt_jenis.getText()+"','"+txt_distributor.getText()+"')";

kode di atas yaitu perintah mysql yang dijalankan pada java. berikut tampilan aplikasi setelah di

jalankan :

tambah data

klik kanan pada tombol Edit pilih events Actions actionPerformen.. 

Sumber : http://www.carikode.com - 5

Page 6: Tutorial lanjutan java netbeans 8 : Create Read Update Delete

setelah tampil source code, tuliskan syntax berikut :

123456789101112131415161718

    private void b_editActionPerformed(java.awt.event.ActionEvent evt) {                                                try {            String value1 = txt_id.getText();            String value2 =txt_nama.getText();            String value3 = txt_jenis.getText();            String value4 =txt_distributor.getText();            String sql ="update barang set id_barang='"+value1+"', nama_barang='"+value2+"', jenis_barang='"+value3+"', distributor='"+value4+"' where id_barang='"+value1+"'";            java.sql.Connection conn=(java.sql.Connection) koneksi.koneksi.koneksiDB();            java.sql.PreparedStatement pst = conn.prepareStatement(sql);            pst.execute();                        JOptionPane.showMessageDialog(null, "edit ?");        } catch (Exception e) {            JOptionPane.showMessageDialog(null, "error");        }        update_tabel();    }

penjelasan :

1234

            String value1 = txt_id.getText();            String value2 =txt_nama.getText();            String value3 = txt_jenis.getText();            String value4 =txt_distributor.getText();

code di atas diibaratkan misalnya txt_id.getText, dll. jadi maksudnya untuk memudahkan dalam

penulisan kode pada syntax mysql.

Sumber : http://www.carikode.com - 6

Page 7: Tutorial lanjutan java netbeans 8 : Create Read Update Delete

1 String sql ="update barang set id_barang='"+value1+"', nama_barang='"+value2+"', jenis_barang='"+value3+"', distributor='"+value4+"' where id_barang='"+value1+"'";

code ini merupakan syntak mysql untuk mengedit data.

12

java.sql.Connection conn=(java.sql.Connection) koneksi.koneksi.koneksiDB();            java.sql.PreparedStatement pst = conn.prepareStatement(sql);

code ini untuk mengkoneksikan fungdi edit dengan mysql.

123

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

jika perintah di atas error maka perintah ini akan dijalankan.

berikut tampilan aplikasi setelah dijalankan :

fungsi edit

klik pada salah satu item data dan akan muncul ke form pengisian, ganti salah satu item tersebut,

misalkan ganti nama aplikasi dari game fuzzle menjadi game, setelah itu tekan tombol Edit. dan

ini dia hasilnya :

Sumber : http://www.carikode.com - 7

Page 8: Tutorial lanjutan java netbeans 8 : Create Read Update Delete

fungsi edit

nama barang sudah berubah menjadi game.

berikutnya klik kanan pada tombol Hapus pilih events action actionPerformed..

akan muncul form source code dan tuliskan syntak berikut :

123456789101112131415161718192021

private void b_hapusActionPerformed(java.awt.event.ActionEvent evt) {                                                // TODO add your handling code here:        try {            String sql ="delete from barang where id_barang=? ";            java.sql.Connection conn = (java.sql.Connection) koneksi.koneksi.koneksiDB();            java.sql.PreparedStatement pst = conn.prepareStatement(sql);                        pst.setString(1, txt_id.getText());            pst.execute();                                    JOptionPane.showMessageDialog(null, "hapus");            txt_id.setText("");            txt_nama.setText("");            txt_jenis.setText("");            txt_distributor.setText("");                    } catch (Exception e) {        }        update_tabel();    }

Sumber : http://www.carikode.com - 8

Page 9: Tutorial lanjutan java netbeans 8 : Create Read Update Delete

penjelasan :

123

String sql ="delete from barang where id_barang=? ";            java.sql.Connection conn = (java.sql.Connection) koneksi.koneksi.koneksiDB();            java.sql.PreparedStatement pst = conn.prepareStatement(sql);

string sql merupakan perintah mysql yang dijalankan dalam aplikasi, sedangkan java.sql

merupakan koneksi untuk menghubungkan antara fungsi delete dengan mysql.

1234

txt_id.setText("");            txt_nama.setText("");            txt_jenis.setText("");            txt_distributor.setText("");

perintah ini fungsinya ketika data berhasil dihapus, maka semua form pengisian dikosongkan.

Ketika aplikasi dijalankan maka berikut aksinya.

fungsi hapus

pilih data yang akan dihapus, dan klik tombol hapus. jika berhasil di hapus, maka data yang ke

tujuh akan hilang.

Sumber : http://www.carikode.com - 9

Page 10: Tutorial lanjutan java netbeans 8 : Create Read Update Delete

fungsi hapus

klik kanan pada tombol batal, pilih Events Action actionPerformed tuliskan code

berikut di fungsi batal :

1234567

    private void b_batalActionPerformed(java.awt.event.ActionEvent evt) {                                                // TODO add your handling code here:        txt_id.setText("");        txt_nama.setText("");        txt_jenis.setText("");        txt_distributor.setText("");    }

kode ini fungsinya ketika ditekan tombol batal, maka form pegisian akan dikosongkan kembali

Sumber : http://www.carikode.com - 10

Page 11: Tutorial lanjutan java netbeans 8 : Create Read Update Delete

fungsi batal pada crud

pertama aplikasi yang dijalankan seperti di atas, klik salah satu data yang ada pada tabel, maka

semua isi tabel akan dialihkan ke form pengisian, dan ketika tombol batal diklik, maka form isi

yang berada dalam form pengisian akan hilang.

fungsi batal pada form crud menggunakan java

Berikutnya klik kanan pada tombol kembali pilih Events Action actionPerformed,

tuliskan kode berikut dalam fungsi kembali :

Sumber : http://www.carikode.com - 11

Page 12: Tutorial lanjutan java netbeans 8 : Create Read Update Delete

12345

private void b_kembaliActionPerformed(java.awt.event.ActionEvent evt) {                                                  // TODO add your handling code here:        this.dispose();        System.exit(0);}

fungsinya, ketika tombol kembali diklik maka aplikasi akan ditutup / close.

Sumber : http://www.carikode.com - 12

Page 13: Tutorial lanjutan java netbeans 8 : Create Read Update Delete

Kode selengkapnya sebagai berikut :

1. import java.sql.*;2. import javax.swing.*;3. import com.mysql.jdbc.*;4. import net.proteanit.sql.DbUtils;5. /*** 6. @author c137. ***/8.9. public class data_produk extends javax.swing.JFrame {10. private void update_tabel(){11. try {12. java.sql.Connection conn =(java.sql.Connection)koneksi.koneksi.koneksiDB();13. java.sql.Statement stm = conn.createStatement();14. java.sql.ResultSet sql = stm.executeQuery("select * from barang");15. jTable1.setModel(DbUtils.resultSetToTableModel(sql));16. } catch (Exception e) {17. }18. }19.20. public data_produk() {21. initComponents();22. update_tabel();23. }24.25. private void jTable1MouseClicked(java.awt.event.MouseEvent evt) { 26. // TODO add your handling code here:27. try {28. int row =jTable1.getSelectedRow();29. String tabel_klik=(jTable1.getModel().getValueAt(row, 0).toString());30. java.sql.Connection conn =(java.sql.Connection)koneksi.koneksi.koneksiDB();31. java.sql.Statement stm = conn.createStatement();32. java.sql.ResultSet sql = stm.executeQuery("select * from barang where

id_barang='"+tabel_klik+"'");33. if(sql.next()){

String add1 = sql.getString("id_barang");txt_id.setText(add1);String add2 = sql.getString("nama_barang");txt_nama.setText(add2);String add3 = sql.getString("jenis_barang");txt_jenis.setText(add3);String add4 = sql.getString("distributor");txt_distributor.setText(add4);

34. }35. } catch (Exception e) {36. }37. } 38.39. private void b_simpanActionPerformed(java.awt.event.ActionEvent evt) { 40. // TODO add your handling code here:

Sumber : http://www.carikode.com - 13

Page 14: Tutorial lanjutan java netbeans 8 : Create Read Update Delete

41. try {42. String sql = "insert into barang values('"+txt_id.getText()+"','"+txt_nama.getText()

+"','"+txt_jenis.getText()+"','"+txt_distributor.getText()+"')";43. java.sql.Connection conn = (java.sql.Connection) koneksi.koneksi.koneksiDB();44. java.sql.PreparedStatement pst = conn.prepareStatement(sql);45. pst.execute();46. JOptionPane.showMessageDialog(null, "berhasil disimpan");47. } catch (Exception e) {48. JOptionPane.showMessageDialog(null, e);49. }50. update_tabel(); 51. }52.53. private void b_kembaliActionPerformed(java.awt.event.ActionEvent evt) { 54. // TODO add your handling code here:55. this.dispose();56. System.exit(0);57. } 58.59. private void b_hapusActionPerformed(java.awt.event.ActionEvent evt) { 60. // TODO add your handling code here:61. try {62. String sql ="delete from barang where id_barang=? ";63. java.sql.Connection conn = (java.sql.Connection) koneksi.koneksi.koneksiDB();64. java.sql.PreparedStatement pst = conn.prepareStatement(sql);65. pst.setString(1, txt_id.getText());66. pst.execute();67. JOptionPane.showMessageDialog(null, "hapus");68. txt_id.setText("");69. txt_nama.setText("");70. txt_jenis.setText("");71. txt_distributor.setText("");72. } catch (Exception e) {73. }74. update_tabel();75. }76.77. private void b_editActionPerformed(java.awt.event.ActionEvent evt) { 78. try {79. String value1 = txt_id.getText();80. String value2 =txt_nama.getText();81. String value3 = txt_jenis.getText();82. String value4 =txt_distributor.getText();83. String sql ="update barang set id_barang='"+value1+"', nama_barang='"+value2+"',

jenis_barang='"+value3+"', distributor='"+value4+"' where id_barang='"+value1+"'";84. java.sql.Connection conn=(java.sql.Connection) koneksi.koneksi.koneksiDB();85. java.sql.PreparedStatement pst = conn.prepareStatement(sql);86. pst.execute();87. JOptionPane.showMessageDialog(null, "edit ?");88. } catch (Exception e) {89. JOptionPane.showMessageDialog(null, "error");

Sumber : http://www.carikode.com - 14

Page 15: Tutorial lanjutan java netbeans 8 : Create Read Update Delete

90. }91. update_tabel();92. } 93. 94. private void b_batalActionPerformed(java.awt.event.ActionEvent evt) { 95. // TODO add your handling code here:96. txt_id.setText("");97. txt_nama.setText("");98. txt_jenis.setText("");99. txt_distributor.setText("");100. }

Sumber : http://www.carikode.com - 15