Menampilkan Isi Database ke JTable Netbeans

 
Pada artikel sebelumnya saya telah memberikan tutorial tentang bagaimana cara meng inputkan beberapa data dari frame netbeans ke dalam database. Untuk artikel kali ini saya akan mencoba membahas masalah lanjutan dari artikel sebelumnya DISINI, yaitu tentang bagaimana cara untuk menampilkan isi dari table database ke table yg ada pada frame netbeans.

Seperti pada aturannya setiap kali kita ingin membuat sebuah program yg berhubungan dengan database, kita memerlukan sebuah class koneksi agar projects yg kita jalankan dan database yg ada bisa saling terintegrasi. Langsung saja berikut akan saya sajikan beberapa tutorial bagaimana cara
untuk menampilkan isi database ke dalam jtable netbeans.

Dikarenakan ini adalah tutorial lanjutan dari postingan sebelumnya, maka saya akan menggunakan database yg sama dan pada package yg sama dengan yg saya gunakan pada tutorial sebelumnya DISINI.
Ini adalah tampilan database dengan nama table "datamahasiswa", yg mana telah terisikan 3 buah data
mysql netbeans, java database, database, java, sistem informasi, input data
Ini adalah class koneksi yg saya gunakan.

package mahasiswa;
/**
*
* @author yudhaN
*/
import java.sql.Connection;
import java.sql.DriverManager;
import javax.swing.JOptionPane;
public class koneksi implements key {
Connection con;
public koneksi(){
String id, pass, driver, url;
id = "root";
pass = "";
driver = "com.mysql.jdbc.Driver";
url = "jdbc:mysql://localhost:3306/mahasiswa";
try{
Class.forName(driver).newInstance();
con = DriverManager.getConnection(url,id,pass);
if (con==null){
JOptionPane.showMessageDialog (null,"GAGAL");
}else{
JOptionPane.showMessageDialog(null,"Koneksi Berhasil");
}
}catch (Exception e){
System.out.println(""+e.getMessage());
}
}
public static void main(String[]args){
koneksi k=new koneksi();
}
}

mysql netbeans, java database, database, java, sistem informasi, input data
1. Buatlah sebuah frame baru dengan nama "tabledata".(klik kanan--> new--> jframe form).
2. kemudian tarik beberapa komponen dari menu palette, 2 button dan 2 table. mengapa kita membutuhkan 2 table, disini saya akan memberikan contoh yg mana table 1 adalah menampilkan semua kolom yg ada pada database, dan pada table 1 nya hanya akan menampilkan beberapa data kolom saja, susun komponennya seperti berikut.
mysql netbeans, java database, database, java, sistem informasi, input data
3. Ubah variable name pada setiap komponen (klik kanan--> change variable name)
mysql netbeans, java database, database, java, sistem informasi, input data
4. Masuk ke lembar "source code", import-kan beberapa package berikut.

import java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;

5. kemudan tepat dibawah kode "public class tabledata extends javax.swing.JFrame", ketikan kode berikut.

Statement st;
ResultSet rs;
koneksi koneksi;

Kode tersebut berfungsi untuk menginisialisasikan package resutset, statement, dan memanggil fungsi pada class koneksi yg telah kita buat sebelumnya,class koneksi disini akan terus kita gunakan jika frame yg kita buat ada hubungannya dengan database, sehingga kita perlu mengkoneksikannya terlebih dahulu.

6. tambahkan juga kode berikut tepat dibawah "public tabledata()".

koneksi = new koneksi(); 
mysql netbeans, java database, database, java, sistem informasi, input data
7. Selanjutnya buat sebuah fungsi baru dengan nama "semuadata" (private void semua data).
mysql netbeans, java database, database, java, sistem informasi, input data
8. Kemudian didalam void "semuadata", pastekan kode berikut.

Object header[]={"NPM","NAMA","UMUR","FAKULTAS","PRODI"};
DefaultTableModel data = new DefaultTableModel(null, header);
tabel1.setModel(data);

String sql = "select * from datamahasiswa";
try {
st = koneksi.con.createStatement();
rs = st.executeQuery(sql);
while(rs.next()){
String kolom1 = rs.getString(1);
String kolom2 = rs.getString(2);
String kolom3 = rs.getString(3);
String kolom4 = rs.getString(4);
String kolom5 = rs.getString(5);

String kolom[] = {kolom1, kolom2, kolom3, kolom4, kolom5};
data.addRow(kolom);
}
}catch (Exception e){
JOptionPane.showMessageDialog(null,"error :"+e.getMessage());
mysql netbeans, java database, database, java, sistem informasi, input data
Penjelasan Kode :
-. Object header[]={"NPM","NAMA","UMUR","FAKULTAS","PRODI"} = kode ini berfungsi sebagai nama-nama dari kolom pada table jframe, nama-nama tersebut disimpan kedalam array.
-. DefaultTableModel data = new DefaultTableModel(null, header) = dari package DefaultTableModel kita membuat model table baru dengan nama "data"

-. tabel1.setModel(barang) = tabel1 adalah nama variable dari table pada jframe.
-. select * from datamahasiswa = ini adalah bahasa SQL yg berarti kita memilih semua kolom yg ada pada table datamahasiswa pada database.(tanda bintang artinya memilih semua kolom pada table).
-. String kolom1 = rs.getString(1) = merpakan fungsi untuk mengambil nilai pada setiap kolom yg ada pada table, mulai dari kolom 1 hingga lanjut ke kolom-kolom seterusnya. dan kolom ini disimpan kedalam array kolom[], yg kemudian array kolom yg telah berisi data-data tersebut akan tambahkan ke dalam baris model table "data".

Penting : object pada kolom header harus sama banyaknya dengan pengambilan nilai pada kode String kolom1 = rs.getString(1), yg mana pada fungsi diatas kita melakukan pengambilan hingga kolom ke-5, dan jumlah object pada array header juga ada 5, dan object-object pada array header juga harus berurutan sesuai dengan yg ada pada table database.

9. Ulangi langkah ke-7, buat sebuah sebuah fungsi baru lagi dengan nama "tidaksemuadata".
mysql netbeans, java database, database, java, sistem informasi, input data
Dan pastekan kode berikut ke dalam fungsi tersebut.

Object header[]={"NPM","NAMA","UMUR"};
DefaultTableModel data = new DefaultTableModel(null, header);
tabel2.setModel(data);

String sql = "select NPM, Nama, Umur from datamahasiswa";
try {
st = koneksi.con.createStatement();
rs = st.executeQuery(sql);
while(rs.next()){
String kolom1 = rs.getString(1);
String kolom2 = rs.getString(2);
String kolom3 = rs.getString(3);

String kolom[] = {kolom1, kolom2, kolom3};
data.addRow(kolom);
}
}catch (Exception e){
JOptionPane.showMessageDialog(null,"error :"+e.getMessage());
mysql netbeans, java database, database, java, sistem informasi, input data
Penjelasan Kode :
Dari penjelasan kode di langkah ke-8, tidak terlalu banyak yg berbeda, hanya saja pada object header nya, yg mana pada object header pada langkah ke-9 ini hanya saya isi beberapa kolom saja sebagai sample.

10. Balik ke lembar "design", buat action pada button "tampilkan semua" dan pada button "tampilkan sebagian". (klik kanan pada button--> event--> action--> actionperformed).
mysql netbeans, java database, database, java, sistem informasi, input data
11. Maka kita akan beralih ke lembar source code, disini pada action button "tampilkan semua", panggil fungsi "semua data();". Dan pada action button tampilkan sebagian, panggil fungsi "tidaksemuadata();".
mysql netbeans, java database, database, java, sistem informasi, input data
Sekarang coba kita jalankan frame yg barusan kita buat, jika berhasil pada saat klik tombol "tampilkan semua" maka pada tabel1 akan memunculkan semua data yg ada pada database, dan jika kita klik tombol "tampilkan sebagian", maka pada table 2 akan muncul sebagian data yg telah kita pilih dari database.
mysql netbeans, java database, database, java, sistem informasi, input data
Jika kalian mengikuti tutorial ini dari artikel sebelumnya maka kalian bisa menggabungkan ke-2 tutorial ini dalam 1 frame, sehingga tampilannya nanti akan seperti berikut.
mysql netbeans, java database, database, java, sistem informasi, input data
Alur Program
Frame diatas adalah gabungan 2 fungsi yaitu menginputkan data dan menampilkan data. Algoritma nya adalah kita buat 2 fungsi terlebih dahulu, fungsi simpan dan fungsi tampil, dan ke dua fungsi ini di panggil pada action tombol simpan, sehingga pada saat frame dijalankan, isikan semua data terlebih dahulu, kemudian dengan meng-klik tombol simpan, maka program akan menjalankan fungsi simpan, setelah data berhasil disimpan, program akan menjalankan fungsi selanjutnya, yatu fungsi tampil, sehingga data yg telah ada dan data yg barusan disimpan akan tertampil pada table yg telah
sediakan. 

Penulis : ENDs ~ Sebuah blog yang menyediakan berbagai macam informasi

Artikel Menampilkan Isi Database ke JTable Netbeans ini dipublish oleh ENDs pada hari Tuesday 20 January 2015. Semoga artikel ini dapat bermanfaat.Terimakasih atas kunjungan Anda silahkan tinggalkan komentar.sudah ada 0 komentar: di postingan Menampilkan Isi Database ke JTable Netbeans
 

0 comments:

Post a Comment

https://www.instagram.com/endskuulzyr027st.blogspot.com_/