Tutorial membuat laporan bencana menggunakan NetBeans

UAS

Nama    : Deden Supriadi
NIM      : 171011400955
Kelas     : 06TPLE014

Assalamualaikum ...

Apa kabar sahabat blog? semoga sehat selalu ya😊
Pada tutorial kali ini kita akan belajar membuat program laporan bencana, menggunakan NetBeans dan hasil akhir dari tutorial ini akan menampilkan grafik Pie.
Oiyaa pastikan aplikasi NetBeans nya sudah terinstal ya, Oke langsung saja kita mulai gaess ga usah lama lama 😅...

Pertama kita buat database nya terlebih dahulu, Buka Aplikasi XAMPP Klik Start pada Apache dan MySQL Seperti Berikut


Kemudian buka browser dan masukkan link "localhost/phpmyadmin"


Buat tabel baru 


Kemudian simpan 



Nah jika sudah kita buka aplikasi NetBeans nya, Buat project dengan nama "Komgraf_UAS" 



Kemudian buat JFrameForm dengan nama “GrafikInput"



Dan desain seperti ini

Masukkan source/perintah import pada class "GrafikInput"


import java.awt.Dimension;
import java.awt.Toolkit;
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.List;
import javafx.scene.chart.PieChart;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;


Oiyaa jangan lupa kita masukkan libraries sebagai pendukung program, jika tidak ada bisa download terlebih dahulu



Kemudian kita buat source package baru java main class dengan nama "PieGrafikInput"


Masukkan source/perintah import pada class "PieGrafikInput"

import javax.swing.JFrame;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import java.util.Locale;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PiePlot3D;
import org.jfree.data.general.DefaultKeyedValueDataset;
import org.jfree.data.general.DefaultPieDataset;
import org.jfree.data.general.PieDataset;
import org.jfree.util.Rotation;



Kemudian masukkan source code berikut pada class "PieGrafikInput"

public class PieGrafikInput extends JFrame{
    double n1_deyudra=0,n2_deyudra=0, n3_deyudra=0,n4_deyudra=0;
public void setNilai(String nilai1_deyudra, String nilai2_deyudra, String nilai3_deyudra, String nilai4_deyudra){
try {
n1_deyudra = Double.parseDouble(nilai1_deyudra);
} catch (NumberFormatException ex){}
try {
n2_deyudra = Double.parseDouble(nilai2_deyudra);
} catch (NumberFormatException ex){}
try {
n3_deyudra = Double.parseDouble(nilai3_deyudra);
} catch (NumberFormatException ex){}
try {
n4_deyudra = Double.parseDouble(nilai4_deyudra);
} catch (NumberFormatException ex){}

this.setSize(600, 400);
this.setTitle("Diagram Pie DEYUDRA");
this.setLocationRelativeTo(null);
try {
    n3_deyudra = Double.parseDouble(nilai3_deyudra);
} catch (NumberFormatException ex){}

this.setSize(600,400);
this.setTitle("Diagram Pie DEYUDRA");
this.setLocationRelativeTo(null);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

//membuat diagram/chart jfreechart
//Memuat/mengakulasikan data char
PieDataset dataset_deyudra = buildData();
// Membuat chart berdasarkan data yang ada pada dataset
JFreeChart Chart_deyudra =buildChart(dataset_deyudra, "Data DEYUDRA Dari Grafik Input");
// Memasukan chart pada panel agar lebih mudah ditampilkan pada komponen swing containe
ChartPanel PieChart_deyudra = new ChartPanel(Chart_deyudra);

//memasukan chart panel kedalam jpanel
this.setContentPane(PieChart_deyudra);

private JFreeChart buildChart(PieDataset dataset, String judul){
    JFreeChart chart_deyudra = ChartFactory.createPieChart3D(judul, // Judul Chart
            dataset, // data chart yang akan di tampilkan 
            true, // jika ya, maka akan legend chart/diagram ditampilkan
            true,
            false);
    
    PiePlot3D plot_deyudra =(PiePlot3D) chart_deyudra.getPlot();
    plot_deyudra.setStartAngle(290);
    plot_deyudra.setDirection(Rotation.CLOCKWISE);
    plot_deyudra.setForegroundAlpha(0.5f);
    return chart_deyudra;
}

private PieDataset buildData(){
    DefaultPieDataset dataSet_deyudra = new DefaultPieDataset();
    dataSet_deyudra.setValue("Nilai 1", n1_deyudra);
    dataSet_deyudra.setValue("Nilai 2", n2_deyudra);
    dataSet_deyudra.setValue("Nilai 3", n3_deyudra);
    dataSet_deyudra.setValue("Nilai 4", n4_deyudra);
    
    return dataSet_deyudra;
}

public static void main(String[] args) {
    try {
        UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
    } catch (Exception e) {
    }
    
    SwingUtilities.invokeLater(new Runnable(){
        @Override
        public void run(){
            new PieGrafikInput().setVisible(true);
        }
    });
}  
}



Jika sudah semua kita kembali ke jFrame form "GrafikInput" dan masukkan source code berikut

public class GrafikInput extends javax.swing.JFrame {
private Statement stat;
    private Connection con;
    private ResultSet res; 
    private String t;
    private DefaultTableModel 
            dtm; ResultSet rs;    
            String sql;
    /**
     * Creates new form GrafikInput
     */
    public GrafikInput() {
        initComponents();
        koneksi();         
        kosongkan();
        
        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();        
        Dimension frameSize = getSize();       
        setLocation(        
                (screenSize.width - frameSize.width) / 2,        
                (screenSize.height - frameSize.height) / 2);
    }
    //tabel
    private void tabel(){ 
        DefaultTableModel t= new DefaultTableModel(); 
        t.addColumn("Luka-Luka"); 
        t.addColumn("Meinggal"); 
        t.addColumn("Rumah Rusak"); 
        t.addColumn("Kerusakan Kendaraan");
        jTable1.setModel(t); 
        try{ res=stat.executeQuery("select * from netizen"); 
        while (res.next()) { 
            t.addRow(new Object[]{ 
                res.getString("Luka-Luka"), 
                res.getString("Meinggal"),
                res.getString("Rumah Rusak"), 
                res.getString("Kerusakan Kendaraan") }); } 
        }
        catch 
                (Exception e) { JOptionPane.showMessageDialog(rootPane, e); } }
//koneksi
    private void koneksi(){ 
        try { 
            Class.forName("com.mysql.jdbc.Driver"); 
    con=DriverManager.getConnection("jdbc:mysql://127.0.0.1/komgrafuas", "root", ""); 
    stat=con.createStatement(); } 
        catch (Exception e) { JOptionPane.showMessageDialog(null, e); } }
    
    //kosongkan
    private void kosongkan(){
        LukaLuka.setText(""); 
        RumahRusak.setText("");
    Meninggal.setText("");
    KerusakanKendaraan.setText("");
    jLabel4_deyudra.setText("");
    jLabel5_deyudra.setText("");
    jLabel6_deyudra.setText("");
    jLabel7_deyudra.setText("");}



Kemudian masukkan source code berikut pada Button "Simpan"


   private void SAVE_deyudraActionPerformed(java.awt.event.ActionEvent evt) {                                             
        // TODO add your handling code here:
        int a_deyudra,b_deyudra,c_deyudra,d_deyudra;
        a_deyudra=Integer.parseInt(LukaLuka.getText());
        b_deyudra=Integer.parseInt(Meninggal.getText());
        c_deyudra=Integer.parseInt(RumahRusak.getText());
        d_deyudra=Integer.parseInt(KerusakanKendaraan.getText());
        
        jLabel4_deyudra.setText(""+a_deyudra);
        jLabel5_deyudra.setText(""+b_deyudra);
        jLabel6_deyudra.setText(""+c_deyudra);
        jLabel7_deyudra.setText(""+d_deyudra);
        
        try {
            stat.executeUpdate("insert into netizen values ("
                + "'"
                + LukaLuka.getText() 
                + "',"
                + "'"
                + Meninggal.getText() 
                + "',"
                + "'"
                + RumahRusak.getText() 
                + "',"
                + "'"
                + KerusakanKendaraan.getText() 
                + "')");

            
            
            JOptionPane.showMessageDialog(null, "Berhasil Disimpan");
            
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, "Gagal"+e);
        }
        
    }



 Masukkan source code berikut pada Button "Lihat"

    private void LIHATActionPerformed(java.awt.event.ActionEvent evt) {                                      
        // TODO add your handling code here:
        try{
Object [] rows={"Luka-Luka","Meninggal","Rumah Rusak", "KerusakanKendaraan"}; 
dtm=new DefaultTableModel(null,rows);
jTable1.setModel(dtm); 
jTable1.setBorder(null);
jScrollPane1.setVisible(true); 
jScrollPane1.setViewportView(jTable1);
int no = 1; String LL="",MENINGGAL="",RUMAHRUSAK="",KERUSAKANKENDARAAN="";
try{String sql="select * from netizen";
Statement st=con.createStatement();
ResultSet rs=st.executeQuery(sql); 
while(
        rs.next()){
        LL=rs.getString("Luka-Luka");
        MENINGGAL=rs.getString("Meninggal");
        RUMAHRUSAK=rs.getString("Rumah Rusak");
       KERUSAKANKENDARAAN=rs.getString("Kerusakan Kendaraan");
        String [] tampil={""+LL,MENINGGAL,RUMAHRUSAK,KERUSAKANKENDARAAN};
        dtm.addRow(tampil);
} }
catch(SQLException e){e.printStackTrace();
JOptionPane.showMessageDialog(null,"Query Salah "+e); 
} }
        catch(Exception e){e.printStackTrace(); }
    }


Masukkan source code berikut pada button "Grafik"

 private void GRAFIK_deyudraActionPerformed(java.awt.event.ActionEvent evt) {                                               
        // TODO add your handling code here:
       // BarGrafikInput obj1_MelinindaDwiFitria = new BarGrafikInput();obj1_MelinindaDwiFitria.setNilai(jLabel4_MelinindaDwiFitria.getText(),jLabel5_MelinindaDwiFitria.getText(),jLabel6_MelinindaDwiFitria.getText(),jLabel6_MelinindaDwiFitria1.getText()); obj1_MelinindaDwiFitria.setVisible(true); dispose();
         
        
       PieGrafikInput obj1_deyudra = new PieGrafikInput();
obj1_deyudra.setNilai(LukaLuka.getText(),Meninggal.getText(),RumahRusak.getText(),KerusakanKendaraan.getText()); 


obj1_deyudra.setVisible(true);


dispose();
    }  



Kemudian masukkan source berikut pada tabel kolom data

  private void jTable1MouseClicked(java.awt.event.MouseEvent evt) {                                     
        // TODO add your handling code here:
        int i = jTable1.getSelectedRow(); 
        if(i==-1)
        { 
            return; 
        } 
        String code = (String)
                jTable1.getValueAt(i,0); 
        String code1 = (String)
                jTable1.getValueAt(i,1);
        String code2 = (String)
                jTable1.getValueAt(i,2); 
        String code3 = (String)
                jTable1.getValueAt(i,3);
LukaLuka.setText(code); 
Meninggal.setText(code1);
RumahRusak.setText(code2); 
KerusakanKendaraan.setText(code3);
    }



Oke jika sudah selesai coba kita jalankan gaess



Input data kemudian klik tombol "Simpan"



Jika sudah berhasil klik tombol "Lihat"


Setelah itu klik tombol "Grafik"




Selesai, Selamat mencoba gaess💪🙏

Komentar

Postingan populer dari blog ini

UTS Keamanan Komputer

Tutorial membuat grafik sederhana menggunakan NetBeans