Membuat Data Mahasiswa dengan Java Netbeans dan SQLite

Membuat Data Mahasiswa dengan Java Netbeans dan SQLite
Disusun Oleh : Hendi Santika

Tut 17

Bismillahirrohmanirrohim.
Assalamu ‘alaikum ikhwan sekalian!
Bertemu lagi dengan ane di Tutorial Membuat Data Mahasiswa dengan Java Netbeans dan SQLite ini.
Langsung aja to the point ya!
Donlot dulu SQLite Manager (add-on untuk firefox) di https://addons.mozilla.org/En-us/firefox/addon/sqlite-manager/
Setelah SQLite Manager telah terinstal, maka untuk membukanya caranya dalah dengan membuka Browser Firefox > Tools > SQLite Manager atau dengan cara Alt + T + Q.

Tampilan awal dari SQLite manager adalah sebagai berikut :

Tut 1

Untuk membuat database baru kita tinggal klik icon new database atau pilih menu Database > New Database > beri nama databasenya dengan Akademik kemudian klik OK.

Tut 2

Tentukan lokasi penyimpanan database Akademik di direktori Project Netbeans yang sedang kita buat (satu direktori dengan project dalam folder db).
Untuk membuat table baru klik icon Create table atau pilih menu table > Create table.
Perhatikanlah gambar berikut ini :

Tut 3

Bila sudah silhkan klik OK.

Tut 4

Tut 5

Tut 6

Tut 7

Bila ada Konfirmasi klik Yes saja.

Untuk menginput data ke table mahasiswa pilih tab Execute SQL.

Tut 8

Dan masukan query berikut:
insert into mahasiswa values(‘001’, ‘Hendi Santika’, ‘Manajemen Informtika’, ‘hendisantika@gmail.com’, ‘Jln. Cirengit’)
kemudian klik Run SQL!
Dan table Mahasiswa pun telah terisi satu record baru.

Tut 8

Jika semuanya sudah ready, sekarang mari kita mulai tutorialnya.
1. Pertama buka Netbeans antum.
2. Buat Project baru di sana dengan cara pilih menu File > New Project > Pilih Categories Java > Project : Java Application.

3. Klik Next > Beri nama Projet-nya dengan MahasiswaApp > Finish

Java 1

Java 2

4. Buat package baru dengan nama hendi. shinobi.ui.
Tut 11
5. Masukan Library SQLite.
6. Buat Frame baru di package yang tadi kita buat. Beri nama dengan MahasiswaUI. Kalau sudah klik Finish.
7. Buatlah design seperti gambar berikut ini :
Java 4

No Nama Komponen Nama Variabel
1. JTextField txtNoUrut
2. JTextField txtNama
3. JTextField txtJurusan
4. JTextField txtEmail
5. JTextField txtAlamat
6. JButton btnSimpan
7. JButton btnUbah
8. JButton btnHapus
9. JButton btnReset
10. JButton btnKeluar
11. JTable tblMhs

Design Form dan Database telah kita buat. Sekarang mari kita mulai ngodingnya.
8. Kembali ke netbeans. Lalu klik kanan di button Keluar > Event > ActionPerformed.
Java 11

9. Ketikan kode berikut ini

  System.exit(0);

10. Buat Class baru di package kita beri nama dengan DBConnection.
Ketikan koding sehingga seperti berikut :

  public class DBConnection {
    private Connection koneksi;

    public Connection connect(){
       //untuk koneksi ke driver
       try{
           Class.forName("org.sqlite.JDBC");
           JOptionPane.showMessageDialog(null, "berhasil load driver");
       }catch(ClassNotFoundException ex){
           JOptionPane.showMessageDialog(null, "Tidak ada Driver!\n" + ex);
       }

       //untuk koneksi ke database
       try{
           //String url="jdbc:sqlite:db/litedb.om4gus";
           String url="jdbc:sqlite:db/Akademik.sqlite";
           koneksi=DriverManager.getConnection(url);
           System.out.println("Berhasil koneksi");
       }catch(SQLException se){
           System.out.println("Gagal koneksi "+se);
           JOptionPane.showMessageDialog(null,"Gagal Koneksi Database","Peringatan",JOptionPane.WARNING_MESSAGE);
       }
       return koneksi;
    }
}


Untuk memperbaiki error tekan Ctrl + Shift + I (untuk mengimpor package-package yang diperlukan).

11. Pilih button Simpan kemudian klik kanan dan beri event > actionperform. Kemudian ketikan syntax berikut :
Perhatikan gambar berikut ini :

if (txtNoUrut.getText().equals("")){
            JOptionPane.showMessageDialog(null, "Nomor masih kosong!\n"
                    + "Silahkan diisi terlebih dahulu!");
            txtNoUrut.requestFocus();
        }else if (txtNama.getText().equals("")){
            JOptionPane.showMessageDialog(null, "Nama masih kosong!\n"
                    + "Silahkan diisi terlebih dahulu!");
            txtNama.requestFocus();
        }else if (txtJurusan.getText().equals("")){
            JOptionPane.showMessageDialog(null, "Jurusan masih kosong!\n"
                    + "Silahkan diisi terlebih dahulu!");
            txtJurusan.requestFocus();
        }else if (txtEmail.getText().equals("")){
            JOptionPane.showMessageDialog(null, "Email masih kosong!\n"
                    + "Silahkan diisi terlebih dahulu!");
            txtEmail.requestFocus();
        }else if (txtAlamat.getText().equals("")){
            JOptionPane.showMessageDialog(null, "Alamat masih kosong!\n"
                    + "Silahkan diisi terlebih dahulu!");
            txtAlamat.requestFocus();
        }else {
            try{
            Connection koneksi = new DBConnection().connect();
            String sql = "insert into mahasiswa(id, nama, jurusan, email, alamat)"
            + " values(?,?,?,?,?)";
            java.sql.PreparedStatement stmt = koneksi.prepareStatement(sql);
            
            try{
                stmt.setString(1,txtNoUrut.getText());
                stmt.setString(2,txtNama.getText());
                stmt.setString(3,txtJurusan.getText());
                stmt.setString(4,txtEmail.getText());
                stmt.setString(5,txtAlamat.getText());

                stmt.executeUpdate();
                JOptionPane.showMessageDialog(null,"Data berhasil disimpan!");
                //bersihkan teks
                reset();
                loadTable();
            }catch(SQLException se){
                //System.out.println("Gagal di simpan");
                JOptionPane.showMessageDialog(null,"Data Gagal disimpan!"
                    + "\nDengan Pesan : " + se.getMessage());
            }
            stmt.close();
        }catch(Exception e){}
        }

12. Lakukan kembali langkah 17 untuk memberi aksi pada button Ubah dengan event > ActionPerformed :

 
        java.sql.Connection koneksi = new DBConnection().connect();
        String sql="update mahasiswa set nama = ?, jurusan = ?, email = ?, alamat = ? where id = '" 
                + txtNoUrut.getText()+"'";
        java.sql.PreparedStatement stmt = null;
        try {
            stmt = koneksi.prepareStatement(sql);
        } catch (SQLException ex) {}

        try{
            stmt.setString(1,txtNama.getText());
            stmt.setString(2,txtJurusan.getText());
            stmt.setString(3,txtEmail.getText());
            stmt.setString(3,txtAlamat.getText());

            stmt.executeUpdate();
            JOptionPane.showMessageDialog(null,"Data Berhasil diubah!");
            reset();
            loadTable();
        }catch(SQLException se){
            JOptionPane.showMessageDialog(null,"Data gagal diubah!"
                + "\nTerjadi error dengan pesan : " + se.getMessage());
        }

13. Berilah event > actionPerformed pada button Hapus :

        int ok=JOptionPane.showConfirmDialog(null,
                "Apakah Anda yakin?","Konfirmasi",JOptionPane.YES_NO_OPTION);

        if(ok==0){
            try{
                //panggil method koneksi
                java.sql.Connection koneksi = new DBConnection().connect();

                String sql="delete from mahasiswa where id = '" 
                        + txtNoUrut.getText()+"'";
                java.sql.PreparedStatement stmt=koneksi.prepareStatement(sql);
                stmt.executeUpdate();
                //bersihkan teks
                JOptionPane.showMessageDialog(null,"Data Berhasil dihapus");
                reset();

            }catch(Exception e){
                JOptionPane.showMessageDialog(null,"Data Gagal dihapus!"
                    + "\nDengan pesan error : " + e.getMessage());
            }
        }

14. Buatlah metod baru dengan nama reset

         txtNoUrut.setText(null);
        txtNama.setText(null);
        txtJurusan.setText(null);
        txtEmail.setText(null);
        txtAlamat.setText(null);
        txtNoUrut.requestFocus();

Lalu masukkan ke event button Reset
Ketikkan :

reset();

15. Buatlah metode baru dengan nama tampilData() :

int baris = tblMhs.getSelectedRow();
        String id = DftTabMode1.getValueAt(baris, 0).toString();
        String nama = DftTabMode1.getValueAt(baris, 1).toString();
        String jurusan = DftTabMode1.getValueAt(baris, 2).toString();
        String email = DftTabMode1.getValueAt(baris, 3).toString();
        String alamat = DftTabMode1.getValueAt(baris, 4).toString();

        txtNoUrut.setText(id);
        txtNama.setText(nama);
        txtJurusan.setText(jurusan);
        txtEmail.setText(email);
        txtAlamat.setText(alamat);

16. Buatlah metod baru dengan nama loadTable() :

   DftTabMode1 = new DefaultTableModel(null, Baris);
           tblMhs.setModel(DftTabMode1);

           //panggil method koneksi
           java.sql.Connection koneksi = new DBConnection().connect();

           //untuk menampilkan di table
           try{
               String sql="Select * from mahasiswa order by id asc";
               java.sql.Statement stmt=koneksi.createStatement();
               java.sql.ResultSet rslt=stmt.executeQuery(sql);
               while(rslt.next()){
                   String id = rslt.getString("id");
                   String nama = rslt.getString("nama");
                   String jurusan = rslt.getString("jurusan");
                   String email = rslt.getString("email");
                   String alamat = rslt.getString("alamat");

                   String[] dataField={id, nama, jurusan, email, alamat};
                   DftTabMode1.addRow(dataField);
               }
           }catch(Exception ex){}

17. Kalau sudah, mari kita jalankan aplikasinya.
Tut 17

Demikianlah tutorial singkat ini.
Mudah2n bermanfaat.

Mohon maf dari segala kekurangan.

Kita ketemu lagi di tutorial berikutya.

Download Source Codenya di :

http://www.mediafire.com/?cqn148ooq28385d

Iklan

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s