top of page
Search

Toturial Membuat Aplikasi Database dan menampilkan Output Grafik

  • Writer: igusta willyarto
    igusta willyarto
  • Jun 4, 2020
  • 4 min read

Heeyhoo,


Di post ini, saya akan menjelaskan langkah-langkah pembuatan aplikasi database yang nantinya akan mengeluarkan output berupa grafik. Saya membuat toturial ini untuk memenuhi tugas UAS mata kuliah Komputer Grafik. Semoga ini menambah wawasan anda :).


 

Requirements



Sebelum dimulai, dibawah ini merupakan hal-hal yang diperlukan untuk toturial ini :

  • XAMPP

  • Netbeans (Aplikasi yang saya gunakan)

  • MySQL JDBC Driver (Biasanya terdapat di lokasi library netbeans)


 

Configure phpMyAdmin



Buka aplikasi xampp yang telah kalian install, kemudian start module Apache dan MySQL :


Setelah itu, buka phpMyAdmin di browser kalian (http://localhost/phpmyadmin/). Click New, masukan nama database kalian, click create :


Kemudian, buat table di dalam database yang telah di buat. Disini saya membuat 2 table yaitu table data dan table covid :


Masukan variable serta propertiesnya setelah itu click save :


Perlu diketahui cara pembuatan setiap table itu sama, hanya variablenya saja yang berbeda,

  • Table data


  • Table covid


 

Set-up NetBeans



Pertama, Import library yang ada dan MySQL JDBC Driver :

  • Right click library > Add JAR/Folder

  • Right click library > Add Library



Kemudian, buat new project :

New project > Java > Java Application > nama project



Setelah itu, buat new package:

Right click Source Package > New > Java Package > nama package



Buat Java Class "connect" di dalam package yang telah dibuat :



Kemudian, buat dua JFrame Form "DataPenduduk" dan "DataCovid" di dalam package yang sama :



Set-up sudah selesai, kita lanjut ke bagian selanjutnya.


 

Java Class "connect"


Masukan import ke dalam class "connect" :


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

Kemudian masukan source kode berikut untuk menyambungkan aplikasi dengan MySQL :


public class connect {
    private static Connection MySQLConfig;
     public static Connection configDB()throws SQLException{
        try{
            String url ="jdbc:mysql://localhost:3306/penduduk";
            String user = "root";
            String pass ="";
         
            DriverManager.registerDriver(new com.mysql.jdbc.Driver());
            MySQLConfig = DriverManager.getConnection(url, user, pass);
        }catch(SQLException e){
            System.out.println("Koneksi ke Database Gagal " + e.getMessage());
        }
        return MySQLConfig;
    }
 }

Seperti ini :


 

Data Penduduk



Pertama, design JFrame seperti ini :

Ubah variable Text Field sesuai nama kolom, Button sesuai namanya, dan Table menjadi "tablePenduduk"



Kemudian, masukan import ke JFrame "DataPendudukan" :


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartFrame;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PiePlot;
import org.jfree.chart.plot.PiePlot3D;
import org.jfree.data.general.DefaultPieDataset;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;
import java.awt.HeadlessException;
import javax.swing.table.DefaultTableModel;

Setelah itu, masukan source code berikut ke dalam public class "DataKependudukan" :


private void blank(){
        wilayah.setEditable(true);
        wilayah.setText(null);
        anak.setText(null);
        dewasa.setText(null);
        lansia.setText(null);
    }
 
    private void tampilkan(){
        DefaultTableModel model = new DefaultTableModel();
        model.addColumn("Wilayah");
        model.addColumn("Anak");
        model.addColumn("Dewasa");
        model.addColumn("Lansia");
         try{
            String sql = "SELECT * FROM DATA";
            java.sql.Connection conn = (Connection)connect.configDB();
            java.sql.Statement stm = conn.createStatement();
            java.sql.ResultSet res = stm.executeQuery(sql);
         
            while(res.next()){
                model.addRow(new Object[]{res.getString(1),res.getString(2),res.getString(3),res.getString(4)});
             
            }
            tabelpenduduk.setModel(model);
               }catch (SQLException e){
                System.out.println("Error : " + e.getMessage());
            }
    }
        public DataPenduduk() {
        initComponents();
        tampilkan();
        blank();
    }

Seperti ini :



Setelah itu, double click pada button "tambah", dan masukan source code berikut :


        try{
            String sql = "INSERT INTO data VALUES ('"+wilayah.getText()+"','"+anak.getText()+"','"+dewasa.getText()+"','"+lansia.getText()+"')";
         
 java.sql.Connection conn = (Connection)connect.configDB();
            java.sql.PreparedStatement pstm = conn.prepareStatement(sql);
            pstm.execute();
            JOptionPane.showMessageDialog(null, "Proses Simpan Data Berhasil");
            tampilkan();
            blank();
     
 }catch (HeadlessException | SQLException e){
            JOptionPane.showMessageDialog(this, e.getMessage());
        }


Double click pada button "hapus", dan masukan source code berikut :


try{
            String sql = "DELETE FROM data WHERE nama_wilayah='"+wilayah.getText()+"'";
            java.sql.Connection conn = (Connection)connect.configDB();
            java.sql.PreparedStatement pstm = conn.prepareStatement(sql);
            pstm.execute();
            JOptionPane.showMessageDialog(null, "Hapus Data Berhasil");
        }catch(HeadlessException | SQLException e){
              JOptionPane.showMessageDialog(this, e.getMessage());
        }
        tampilkan();
        blank();
    }


Double click pada button "reset", dan masukan source code berikut :


blank();


Double click pada button "piechart", dan masukan source code berikut :


String Wilayah = wilayah.getText();
        String Anak = anak.getText();
        String Dewasa = dewasa.getText();
        String Lansia = lansia.getText();
        DefaultPieDataset dataset = new DefaultPieDataset();
        dataset.setValue("ANAK",new Integer(Anak));
        dataset.setValue("DEWASA",new Integer(Dewasa));
        dataset.setValue("LANSIA",new Integer (Lansia));
        
        JFreeChart chart1 = ChartFactory.createPieChart(Wilayah, dataset, false, false, false);
        PiePlot plot2 = (PiePlot) chart1.getPlot();
        ChartFrame frame = new ChartFrame("data "+Wilayah,chart1);
        frame.setVisible(true);
        frame.setSize(450,500);


Kemudian di tab Design, tambahkan event pada table dan masukan source code berikut :

Right Click > Events > Mouse > mouseClicked


int row = tabelpenduduk.rowAtPoint(evt.getPoint());
        String nama_wilayah = tabelpenduduk.getValueAt(row, 0).toString();
        wilayah.setText(nama_wilayah);
     
        String ttl_anak = tabelpenduduk.getValueAt(row, 1).toString();
        anak.setText(ttl_anak);
     
        String ttl_dewasa = tabelpenduduk.getValueAt(row, 2).toString();
        dewasa.setText(ttl_dewasa);
     
        String ttl_lansia = tabelpenduduk.getValueAt(row, 3).toString();
        lansia.setText(ttl_lansia);

Seperti ini :


 

Data Covid


Pertama, design JFrame seperti ini :


Ubah variable Text Field sesuai nama kolom, Button sesuai namanya, dan Table menjadi "tablecovid"


Kemudian, masukan import ke JFrame "DataCovid" :


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartFrame;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PiePlot;
import org.jfree.chart.plot.PiePlot3D;
import org.jfree.data.general.DefaultPieDataset;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;
import java.awt.HeadlessException;
import javax.swing.table.DefaultTableModel;


Setelah itu, masukan source code berikut ke dalam public class "DataCovid" :


private void blank(){
        wilayah.setText(null);
        odp.setText(null);
        pdp.setText(null);
        positif.setText(null);
    }
 
    private void tampilkan(){
        DefaultTableModel model = new DefaultTableModel();
        model.addColumn("Wilayah");
        model.addColumn("ODP");
        model.addColumn("PDP");
        model.addColumn("Positif");
 
        try{
            String sql = "SELECT * FROM COVID";
            java.sql.Connection conn = (Connection)connect.configDB();
            java.sql.Statement stm = conn.createStatement();
            java.sql.ResultSet res = stm.executeQuery(sql);
         
            while(res.next()){
            model.addRow(new Object[]{res.getString(1),res.getString(2),res.getString(3),res.getString(4)});
            }
            tabelcovid.setModel(model);
                }catch (SQLException e){
                System.out.println("Error : " + e.getMessage());
            }
    }
        public DataCovid() {
        initComponents();
        tampilkan();
        blank();
    }


Seperti ini :



Setelah itu, double click pada button "tambah", dan masukan source code berikut :


try{
            String sql = "INSERT INTO covid VALUES ('"+wilayah.getText()+"','"+odp.getText()+"','"+pdp.getText()+"','"+positif.getText()+"')";
         
 java.sql.Connection conn = (Connection)connect.configDB();
            java.sql.PreparedStatement pstm = conn.prepareStatement(sql);
            pstm.execute();
            JOptionPane.showMessageDialog(null, "Proses Simpan Data Berhasil");
            tampilkan();
            blank();
     
 }catch (HeadlessException | SQLException e){
            JOptionPane.showMessageDialog(this, e.getMessage());
        }


Double click pada button "hapus", dan masukan source code berikut :


try{
            String sql = "DELETE FROM covid WHERE n_wilayah='"+wilayah.getText()+"'";
            java.sql.Connection conn = (Connection)connect.configDB();
            java.sql.PreparedStatement pstm = conn.prepareStatement(sql);
            pstm.execute();
            JOptionPane.showMessageDialog(null, "Hapus Data Berhasil");
        }catch(HeadlessException | SQLException e){
              JOptionPane.showMessageDialog(this, e.getMessage());
        }
        tampilkan();
        blank();
    }


Double click pada button "reset", dan masukan source code berikut :


blank();


Double click pada button "piechart", dan masukan source code berikut :


String Wilayah = wilayah.getText();
        String Odp = odp.getText();
        String Pdp = pdp.getText();
        String Positif = positif.getText();
        DefaultPieDataset dataset = new DefaultPieDataset();
        dataset.setValue("ODP",new Integer(Odp));
        dataset.setValue("PDP",new Integer(Pdp));
        dataset.setValue("POSITIF",new Integer (Positif));
        
        JFreeChart chart1 = ChartFactory.createPieChart(Wilayah, dataset, false, false, false);
        PiePlot plot2 = (PiePlot) chart1.getPlot();
        ChartFrame frame = new ChartFrame("data "+Wilayah,chart1);
        frame.setVisible(true);
        frame.setSize(450,500);
    }


Kemudian di tab Design, tambahkan event pada table dan masukan source code berikut :

Right Click > Events > Mouse > mouseClicked


int row = tabelcovid.rowAtPoint(evt.getPoint());
        String n_wilayah = tabelcovid.getValueAt(row, 0).toString();
        wilayah.setText(n_wilayah);
     
        String ttl_anak = tabelcovid.getValueAt(row, 1).toString();
        odp.setText(ttl_anak);
     
        String ttl_dewasa = tabelcovid.getValueAt(row, 2).toString();
        pdp.setText(ttl_dewasa);
     
        String ttl_lansia = tabelcovid.getValueAt(row, 3).toString();
        positif.setText(ttl_lansia);


Seperti ini :


 

Hasil



Data Penduduk :

  • Java


  • Database :



Data Covid :

  • Java


  • Database


 

Fin.


Itu saja toturial dari saya. Jika ada pertanyaan bisa ditanyakan di kolom komentar. Semoga post ini menambah wawasan anda. Thanks.

 
 
 

Recent Posts

See All
UAS KEAMANAN KOMPUTER 07TPLE013

20201_Secure_UAS_07TPLE013_IGUSTA WILLYARTO NAMA : Igusta Willyarto DOSEN : Rengga Herdiansyah, A.Md, S.Kom., M.Kom. NIM :...

 
 
 

Comments


Post: Blog2_Post

Subscribe Form

Thanks for submitting!

  • Facebook
  • Twitter
  • LinkedIn

©2020 by Igusta Willyarto

bottom of page