Membuat Pencarian Data Java Netbeans - Mari Belajar Coding

Sabtu, 20 Juni 2020

Membuat Pencarian Data Java Netbeans


Membuat Pencarian Data Java Netbeans

Selamat datang di blog Mari belajar coding. Tutorial kali ini kita akan belajar membuat sebuah kotak pencarian untuk mencari data pada tabel yang di tampilkan pada aplikasi yang kita buat dengan menggunakan GUI java Netbeans. 
Seperti tutorial sebelumnya membuat aplikasi CRUD sederhana menggunakan Java Netbeans, kita persiapkan databasenya terlebih dahulu. Buat database bernama penjualan dan satu tabel bernama produk.


CREATE DATABASE `penjualan`;
USE `penjualan`;

CREATE TABLE `produk` (
`IDProduk` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
`KodeProduk` varchar(32) UNIQUE KEY,
`NamaProduk` varchar(255),
`Satuan` varchar(255),
`Harga` int(11),
`Stok` int(11) ,
`CreateDate` datetime 
);

Buka aplikasi Netbeans IDE kemudian buat project java application baru bernama Penjualan
Membuat Pencarian Data Java Netbeans

Klik kanan pada source packages penjualan, pilih new java class. 
Membuat Pencarian Data Java Netbeans


Buat file bernama koneksi untuk menghubungkan aplikasi dengan database.
Membuat Pencarian Data Java Netbeans

Tambahkan library mysql jdbc driver dengan cara klik kanan pada libraries -> add library  -> MySQL JDBC Driver

Edit file koneksi.java seperti dibawah ini.


package penjualan;
import java.sql.*;
import javax.swing.JOptionPane;
/**
 *
 * @author IT3-PC
 */
public class koneksi {
    private static Connection KoneksiDatabse;
    public static Connection koneksiDB() throws SQLException {
        try {
            String DB ="jdbc:mysql://localhost/penjualan";
            String user="root";
            String pass="";
            DriverManager.registerDriver(new com.mysql.jdbc.Driver());
            KoneksiDatabse = (Connection) DriverManager.getConnection(DB,user,pass);
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null,"Tidak ada koneksi","Error",
            JOptionPane.INFORMATION_MESSAGE);
            System.err.println(e.getMessage());
            System.exit(0);
        }
         return KoneksiDatabse;
    }
}

Buat file Jframe Form dengan klik kanan pada source packages penjualan pilih New->JFrame Form, isikan ClassName dengan nama cariProduk. Buat tampilan GUI seperti gambar dibawah ini dengan drag and drop palette di sisi kanan.
Membuat Pencarian Data Java Netbeans

Ganti variabel name untuk textfield dengan cara klik kanan change variabel name isikan dengan jTextCari.
Ganti variabel name table dengan nama jTableProduk.

Pilih tabs source untuk mengedit kode program, tambahkan import module setelah baris package penjualan pertama.

package penjualan;
import java.sql.*;
import java.awt.*;
import javax.swing.table.DefaultTableModel;

Buat variabel untuk mendeklarasikan tabel dibawah public class cariProduk.
Membuat Pencarian Data Java Netbeans

Buat private void tampildata untuk menampilkan semua data barang.

private void tampilData(){
        try{
            Object[] judul_kolom = {"Kode Barang", "Nama Barang", "Satuan", "Harga", "Stok", "Create Date"};
            tabModel=new DefaultTableModel(null,judul_kolom);
            jTableProduk.setModel(tabModel);
            
            Connection conn=(Connection)koneksi.koneksiDB();
            Statement stt=conn.createStatement();
            tabModel.getDataVector().removeAllElements();
            
            RsProduk=stt.executeQuery("SELECT * from produk ");  
            while(RsProduk.next()){
                Object[] data={
                    RsProduk.getString("KodeProduk"),
                    RsProduk.getString("NamaProduk"),
                    RsProduk.getString("Satuan"),
                    RsProduk.getString("Harga"),
                    RsProduk.getString("Stok"),
                    RsProduk.getString("CreateDate")         
                };
               tabModel.addRow(data);
            }                
        } catch (Exception ex) {
        System.err.println(ex.getMessage());
        }
    }

Buat private void cariData untuk menampilkan data barang berdasarkan pencarian.

private void cariData(String key){
        try{
            Object[] judul_kolom = {"Kode Barang", "Nama Barang", "Satuan", "Harga", "Stok", "Create Date"};
            tabModel=new DefaultTableModel(null,judul_kolom);
            jTableProduk.setModel(tabModel);
            
            Connection conn=(Connection)koneksi.koneksiDB();
            Statement stt=conn.createStatement();
            tabModel.getDataVector().removeAllElements();
            
            RsProduk=stt.executeQuery("SELECT * from produk WHERE KodeProduk LIKE '%"+key+"%' OR NamaProduk LIKE '%"+key+"%' OR Satuan LIKE '%"+key+"%'");  
            while(RsProduk.next()){
                Object[] data={
                    RsProduk.getString("KodeProduk"),
                    RsProduk.getString("NamaProduk"),
                    RsProduk.getString("Satuan"),
                    RsProduk.getString("Harga"),
                    RsProduk.getString("Stok"),
                    RsProduk.getString("CreateDate")         
                };
               tabModel.addRow(data);
            }                
        } catch (Exception ex) {
        System.err.println(ex.getMessage());
        }
    }

Klik kanan pada textfield cari pilih Event->Key->KeyReleased.
Membuat Pencarian Data Java Netbeans

Tambahkan baris program seperti dibawah ini.
Membuat Pencarian Data Java Netbeans

 String key=jTextPencarian.getText();
        System.out.println(key);  
        
        if(key!=""){
            cariData(key);
        }else{
            tampilData();
        }

Untuk menampilkan semua data produk saat program dijalankan pertama kali, tambahkan tampildata() dibawah initComponents().
Membuat Pencarian Data Java Netbeans
Klik kanan pada file cariProduk.java kemudian pilih run file untuk menjalankan program.
Membuat Pencarian Data Java Netbeans

Related Posts

Load comments