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
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
Posting Komentar