Ambil data dari mysql dengan java

Mengambil dan Menampilkan data tabel database di Netbeans, setelah sebelumnya kita berhasil membuat sebuah koneksi database sekarang saatnya kita menampilkan data yang dalam database ke dalam Netbeans. Disini admin bakalan pake sebuah Jtable untuk menampung data data tersebut , Jtable sendiri merupakan sebuah komponen yang dimiliki oleh java Swing , komponen ini mempunyai kemampuan yang luas baik dari sisi data maupun interfacenya. Nah tidak usah berlama-lama langsung saja sekarang kita lanjut ke tutorialnya.

1. Buka NEtbeans Kalian

2. Klik kanan pada packages utama->klik New->Jframe Form

 

3.Beri nama Frame yang kalian buat

4.Drag & drop komponen table dan sesuaikan ukurannya

5. Ganti Variable namenya

6. Masuk ke Source kemudian masukkan syntax sebagai berikut

package test; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import javax.swing.JOptionPane; import javax.swing.table.DefaultTableModel; import lib.koneksi; /** * * @author User */ public class buku extends javax.swing.JFrame { private DefaultTableModel model; /** * Creates new form buku */ public buku() { initComponents(); model = new DefaultTableModel ( ); //digunakan untuk memberi heading / judul pada kolom di tabel buku tabel_buku.setModel(model); // "table_buku sesuaikan dengan variabel name" model.addColumn("KODE_BUKU"); model.addColumn("KODE JENIS"); model.addColumn("JUDUL"); model.addColumn("PENGARANG"); model.addColumn("PENERBIT"); model.addColumn("JUMLAH BUKU"); model.addColumn("HARGA"); getData(); } public void getData( ){ model.getDataVector( ).removeAllElements( ); model.fireTableDataChanged( ); try{ //membuat statemen untuk memanggil data table tabel_buku koneksi connection = new koneksi(); Statement stat = connection.getKoneksi().createStatement( ); String sql = "Select * from tabel_buku"; ResultSet res = stat.executeQuery(sql); //pengecekan terhadap data tabel_buku while(res.next ()){ Object[] obj = new Object[7]; obj[0] = res.getString("KODE_BUKU"); obj[1] = res.getString("KODE_JENIS"); obj[2] = res.getString("JUDUL"); obj[3] = res.getString("PENGARANG"); obj[4] = res.getString("PENERBIT"); obj[5] = res.getString("JUMLAH_BUKU"); obj[6] = res.getString("HARGA"); model.addRow(obj); } }catch(SQLException err){ JOptionPane.showMessageDialog(null, err.getMessage() ); } }

7. Jika dijalankan Hasilnya seperti berikut


Jika Anda perlu banyak bekerja dengan database dalam kode Anda dan Anda tahu struktur tabel Anda, saya sarankan Anda melakukannya sebagai berikut: 

Pertama-tama Anda bisa mendefinisikan kelas yang akan membantu Anda membuat objek yang mampu menjaga data baris tabel Anda. Sebagai contoh dalam proyek saya, saya membuat kelas bernama Document.Java untuk menyimpan data satu dokumen dari basis data saya dan saya membuat daftar susunan objek-objek ini untuk menyimpan data tabel saya yang diperoleh dengan kueri.

package financialdocuments; import Java.lang.*; import Java.util.HashMap; /** * * @author Administrator */ public class Document { private int document_number; private boolean document_type; private boolean document_status; private StringBuilder document_date; private StringBuilder document_statement; private int document_code_number; private int document_employee_number; private int document_client_number; private String document_employee_name; private String document_client_name; private long document_amount; private long document_payment_amount; HashMap<Integer,Activity> document_activity_hashmap; public Document(int dn,boolean dt,boolean ds,String dd,String dst,int dcon,int den,int dcln,long da,String dena,String dcna){ document_date = new StringBuilder(dd); document_date.setLength(10); document_date.setCharAt(4, '.'); document_date.setCharAt(7, '.'); document_statement = new StringBuilder(dst); document_statement.setLength(50); document_number = dn; document_type = dt; document_status = ds; document_code_number = dcon; document_employee_number = den; document_client_number = dcln; document_amount = da; document_employee_name = dena; document_client_name = dcna; document_payment_amount = 0; document_activity_hashmap = new HashMap<>(); } public Document(int dn,boolean dt,boolean ds, long dpa){ document_number = dn; document_type = dt; document_status = ds; document_payment_amount = dpa; document_activity_hashmap = new HashMap<>(); } // Print document information public void printDocumentInformation (){ System.out.println("Document Number:" + document_number); System.out.println("Document Date:" + document_date); System.out.println("Document Type:" + document_type); System.out.println("Document Status:" + document_status); System.out.println("Document Statement:" + document_statement); System.out.println("Document Code Number:" + document_code_number); System.out.println("Document Client Number:" + document_client_number); System.out.println("Document Employee Number:" + document_employee_number); System.out.println("Document Amount:" + document_amount); System.out.println("Document Payment Amount:" + document_payment_amount); System.out.println("Document Employee Name:" + document_employee_name); System.out.println("Document Client Name:" + document_client_name); } }

Kedua, Anda dapat menentukan kelas untuk menangani kebutuhan basis data Anda. Sebagai contoh saya mendefinisikan kelas bernama DataBase.Java yang menangani koneksi saya ke database dan permintaan saya yang dibutuhkan. Dan saya membuat keberatan di kelas utama saya. 

package financialdocuments; import Java.sql.Connection; import Java.sql.DriverManager; import Java.sql.ResultSet; import Java.sql.SQLException; import Java.sql.Statement; import Java.util.ArrayList; import Java.util.HashMap; import Java.util.logging.Level; import Java.util.logging.Logger; /** * * @author Administrator */ public class DataBase { /** * * Defining parameters and strings that are going to be used * */ //Connection connect; // Tables which their datas are extracted at the beginning HashMap<Integer,String> code_table; HashMap<Integer,String> activity_table; HashMap<Integer,String> client_table; HashMap<Integer,String> employee_table; // Resultset Returned by queries private ResultSet result; // Strings needed to set connection String url = "jdbc:mysql://localhost:3306/financial_documents?useUnicode=yes&characterEncoding=UTF-8"; String dbName = "financial_documents"; String driver = "com.mysql.jdbc.Driver"; String userName = "root"; String password = ""; public DataBase(){ code_table = new HashMap<>(); activity_table = new HashMap<>(); client_table = new HashMap<>(); employee_table = new HashMap<>(); Initialize(); } /** * Set variables and objects for this class. */ private void Initialize(){ System.out.println("Loading driver..."); try { Class.forName(driver); System.out.println("Driver loaded!"); } catch (ClassNotFoundException e) { throw new IllegalStateException("Cannot find the driver in the classpath!", e); } System.out.println("Connecting database..."); try (Connection connect = DriverManager.getConnection(url,userName,password)) { System.out.println("Database connected!"); //Get tables' information selectCodeTableQueryArray(connect); // System.out.println("HshMap Print:"); // printCodeTableQueryArray(); selectActivityTableQueryArray(connect); // System.out.println("HshMap Print:"); // printActivityTableQueryArray(); selectClientTableQueryArray(connect); // System.out.println("HshMap Print:"); // printClientTableQueryArray(); selectEmployeeTableQueryArray(connect); // System.out.println("HshMap Print:"); // printEmployeeTableQueryArray(); connect.close(); }catch (SQLException e) { throw new IllegalStateException("Cannot connect the database!", e); } } /** * Write Queries * @param s * @return */ public boolean insertQuery(String s){ boolean ret = false; System.out.println("Loading driver..."); try { Class.forName(driver); System.out.println("Driver loaded!"); } catch (ClassNotFoundException e) { throw new IllegalStateException("Cannot find the driver in the classpath!", e); } System.out.println("Connecting database..."); try (Connection connect = DriverManager.getConnection(url,userName,password)) { System.out.println("Database connected!"); //Set tables' information try { Statement st = connect.createStatement(); int val = st.executeUpdate(s); if(val==1){ System.out.print("Successfully inserted value"); ret = true; } else{ System.out.print("Unsuccessful insertion"); ret = false; } st.close(); } catch (SQLException ex) { Logger.getLogger(DataBase.class.getName()).log(Level.SEVERE, null, ex); } connect.close(); }catch (SQLException e) { throw new IllegalStateException("Cannot connect the database!", e); } return ret; } /** * Query needed to get code table's data * @param c * @return */ private void selectCodeTableQueryArray(Connection c) { try { Statement st = c.createStatement(); ResultSet res = st.executeQuery("SELECT * FROM code;"); while (res.next()) { int id = res.getInt("code_number"); String msg = res.getString("code_statement"); code_table.put(id, msg); } st.close(); } catch (SQLException ex) { Logger.getLogger(DataBase.class.getName()).log(Level.SEVERE, null, ex); } } private void printCodeTableQueryArray() { for (HashMap.Entry<Integer ,String> entry : code_table.entrySet()){ System.out.println("Key : " + entry.getKey() + " Value : " + entry.getValue()); } } /** * Query needed to get activity table's data * @param c * @return */ private void selectActivityTableQueryArray(Connection c) { try { Statement st = c.createStatement(); ResultSet res = st.executeQuery("SELECT * FROM activity;"); while (res.next()) { int id = res.getInt("activity_number"); String msg = res.getString("activity_statement"); activity_table.put(id, msg); } st.close(); } catch (SQLException ex) { Logger.getLogger(DataBase.class.getName()).log(Level.SEVERE, null, ex); } } private void printActivityTableQueryArray() { for (HashMap.Entry<Integer ,String> entry : activity_table.entrySet()){ System.out.println("Key : " + entry.getKey() + " Value : " + entry.getValue()); } } /** * Query needed to get client table's data * @param c * @return */ private void selectClientTableQueryArray(Connection c) { try { Statement st = c.createStatement(); ResultSet res = st.executeQuery("SELECT * FROM client;"); while (res.next()) { int id = res.getInt("client_number"); String msg = res.getString("client_full_name"); client_table.put(id, msg); } st.close(); } catch (SQLException ex) { Logger.getLogger(DataBase.class.getName()).log(Level.SEVERE, null, ex); } } private void printClientTableQueryArray() { for (HashMap.Entry<Integer ,String> entry : client_table.entrySet()){ System.out.println("Key : " + entry.getKey() + " Value : " + entry.getValue()); } } /** * Query needed to get activity table's data * @param c * @return */ private void selectEmployeeTableQueryArray(Connection c) { try { Statement st = c.createStatement(); ResultSet res = st.executeQuery("SELECT * FROM employee;"); while (res.next()) { int id = res.getInt("employee_number"); String msg = res.getString("employee_full_name"); employee_table.put(id, msg); } st.close(); } catch (SQLException ex) { Logger.getLogger(DataBase.class.getName()).log(Level.SEVERE, null, ex); } } private void printEmployeeTableQueryArray() { for (HashMap.Entry<Integer ,String> entry : employee_table.entrySet()){ System.out.println("Key : " + entry.getKey() + " Value : " + entry.getValue()); } } }

Saya harap ini bisa sedikit membantu. 

Postingan terbaru

LIHAT SEMUA