• Buka xampp start Apache dan Mysql

 

 

 

  • Klik New untuk mmbuat database baru dengan nama grafik, dan table dengan nama grafikbar dan grafikpie setelah itu masukan jumlah column klik save

  • Database telah terbentuk dengan tampilan seperti berikut

 

  • Lalu Buka Netbeans dan buat Project Baru

 

  • Import Library JFrame Form dan MySQL  JDBC Driver

 

 

 

  • Pada koneksi.java masukan source code sebagai berikut :

package database;

 

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

 

/**

 *

 * @author Massindo

 */

public class koneksi {

    private static Connection koneksi;

    public static Connection getkoneksi(){

        if (koneksi==null){

            try{

              String url = new String();

              String user = new String();

              String password = new String();

              url ="jdbc:mysql://localhost:3306/grafik";

              user="root";

              password="";

              DriverManager.registerDriver(new com.mysql.jdbc.Driver());

              koneksi =(Connection)DriverManager.getConnection(url,user,password);

           

        }catch(SQLException t){

            System.out.println("Koneksi error");

        }

    }

    return koneksi;

}

}

 

  • Maka akan tampil seperti ini :

 

  • Setelah itu buat class untuk menginput ke database dan menampilkan grafik dengan nama InputGraphicBar_Zen dan InputGraphicPie_Zen

 

  • Buatlah Design InputGraphicsBar_Zen seperti berikut :

 

 

  • Pada Editor InputGraphicsBar_Zen masukan code untuk import ke mysql

 

package muhammadzen_uas_komputergrafik;

 

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.SQLException;

import javax.swing.JOptionPane;

import database.koneksi;

 

  • Tampilan seperti ini :

 

  • Masukan lagi source dibawahnya :

public class InputGraphicsBar_Zen extends javax.swing.JFrame {

private Connection conn = new koneksi().getkoneksi();

 

    public InputGraphicsBar_Zen() {

        this.setTitle("INPUT DATA NILAI");

         initComponents();

        

    }

    private void aktif (){

        zen_nilai1.setEnabled(true);

        zen_nilai2.setEnabled(true);

        zen_nilai3.setEnabled (true);

      

    }

 

    @SuppressWarnings("unchecked")

    // <editor-fold defaultstate="collapsed" desc="Generated Code">                         

    private void initComponents() {

 

        jLabel1 = new javax.swing.JLabel();

        jLabel2 = new javax.swing.JLabel();

        jLabel3 = new javax.swing.JLabel();

        jLabel4 = new javax.swing.JLabel();

        zen_nilai2 = new javax.swing.JTextField();

        zen_nilai3 = new javax.swing.JTextField();

        zen_nilai1 = new javax.swing.JTextField();

        save_zen = new javax.swing.JButton();

        tampilkan_zen = new javax.swing.JButton();

 

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

 

        jLabel1.setText("Jumlah Mahasiswa Unpam Berdasarkan Alamat");

 

        jLabel2.setText("Jakarta");

 

        jLabel3.setText("Tangerang");

 

        jLabel4.setText("Depok");

 

        save_zen.setText("Save");

        save_zen.addActionListener(new java.awt.event.ActionListener() {

            public void actionPerformed(java.awt.event.ActionEvent evt) {

                save_zenActionPerformed(evt);

            }

        });

 

        tampilkan_zen.setText("Tampilkan Graphics Bar");

        tampilkan_zen.addActionListener(new java.awt.event.ActionListener() {

            public void actionPerformed(java.awt.event.ActionEvent evt) {

                tampilkan_zenActionPerformed(evt);

            }

        });

 

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());

        getContentPane().setLayout(layout);

        layout.setHorizontalGroup(

            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

            .addGroup(layout.createSequentialGroup()

                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

                    .addGroup(layout.createSequentialGroup()

                        .addGap(79, 79, 79)

                        .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 244, javax.swing.GroupLayout.PREFERRED_SIZE))

                    .addGroup(layout.createSequentialGroup()

                        .addGap(41, 41, 41)

                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)

                            .addComponent(save_zen, javax.swing.GroupLayout.PREFERRED_SIZE, 121, javax.swing.GroupLayout.PREFERRED_SIZE)

                            .addGroup(layout.createSequentialGroup()

                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)

                                    .addGroup(layout.createSequentialGroup()

                                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)

                                            .addComponent(jLabel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)

                                            .addComponent(jLabel4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))

                                        .addGap(24, 24, 24))

                                    .addGroup(layout.createSequentialGroup()

                                        .addComponent(jLabel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)

                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)))

                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)

                                    .addComponent(zen_nilai3, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 177, Short.MAX_VALUE)

                                    .addComponent(zen_nilai2, javax.swing.GroupLayout.Alignment.LEADING)

                                    .addComponent(zen_nilai1)))

                            .addComponent(tampilkan_zen))))

                .addContainerGap(77, Short.MAX_VALUE))

        );

        layout.setVerticalGroup(

            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

            .addGroup(layout.createSequentialGroup()

                .addGap(24, 24, 24)

                .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE)

                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)

                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

                    .addComponent(jLabel2)

                    .addComponent(zen_nilai1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))

                .addGap(23, 23, 23)

                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

                    .addComponent(jLabel3)

                    .addComponent(zen_nilai2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))

                .addGap(20, 20, 20)

                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

                    .addComponent(jLabel4)

                    .addComponent(zen_nilai3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))

                .addGap(27, 27, 27)

                .addComponent(save_zen)

                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)

                .addComponent(tampilkan_zen)

                .addContainerGap(52, Short.MAX_VALUE))

        );

 

        pack();

    }// </editor-fold>                       

 

    private void save_zenActionPerformed(java.awt.event.ActionEvent evt) {                                        

        // TODO add your handling code here:

    String sql = "insert into grafikbar values (?,?,?)";

      try{

          PreparedStatement stat = conn.prepareStatement(sql);

          stat.setString(1, zen_nilai1.getText());

          stat.setString(2, zen_nilai2.getText());      

          stat.setString(3, zen_nilai3.getText());

         

          stat.executeUpdate();

          JOptionPane.showMessageDialog(null, "Data Berhasil Disimpan");

          zen_nilai1.requestFocus();

      } catch (SQLException e){

            JOptionPane.showMessageDialog(null,"Data Gagal Disimpan"+e);

              }                                        // TODO add your handling code here:

    }                                       

 

    private void tampilkan_zenActionPerformed(java.awt.event.ActionEvent evt) {                                             

        // TODO add your handling code here:

        GraphicsBar_Zen g_Zen = new GraphicsBar_Zen();

        g_Zen.setNilai(zen_nilai1.getText(), zen_nilai2.getText(), zen_nilai3.getText());

        g_Zen.setVisible(true);       

    }                                            

 

    public static void main(String args[]) {

        java.awt.EventQueue.invokeLater(new Runnable() {

            public void run() {

                new InputGraphicsBar_Zen().setVisible(true);

            }

        });

    }

 

    // Variables declaration - do not modify                     

    private javax.swing.JLabel jLabel1;

    private javax.swing.JLabel jLabel2;

    private javax.swing.JLabel jLabel3;

    private javax.swing.JLabel jLabel4;

    private javax.swing.JButton save_zen;

    private javax.swing.JButton tampilkan_zen;

    private javax.swing.JTextField zen_nilai1;

    private javax.swing.JTextField zen_nilai2;

    private javax.swing.JTextField zen_nilai3;

    // End of variables declaration                  

}

 

  • Tampilan seperti ini :


 

  • Setelah itu kita ke Class InputGraphicsPie_Zen dan Design Sebagai berikut

 

  • Lanjut ke Source Code dan masukan codingan berikut :

package muhammadzen_uas_komputergrafik;

 

import database.koneksi;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.SQLException;

import javax.swing.JOptionPane;

 

/**

 *

 * @author Massindo

 */

public class InputGraphicsPie_Zen extends javax.swing.JFrame {

    private Connection conn = new koneksi().getkoneksi();

   

    public InputGraphicsPie_Zen() {

        initComponents();

    }

 

    @SuppressWarnings("unchecked")

    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          

    private void initComponents() {

 

        jLabel1 = new javax.swing.JLabel();

        jLabel2 = new javax.swing.JLabel();

        jLabel3 = new javax.swing.JLabel();

        zen_nilai1 = new javax.swing.JTextField();

        zen_nilai2 = new javax.swing.JTextField();

        zen_nilai3 = new javax.swing.JTextField();

        save_zen = new javax.swing.JButton();

        tampilkan_zen = new javax.swing.JButton();

 

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

 

        jLabel1.setText("Jakarta");

 

        jLabel2.setText("Tangerang");

 

        jLabel3.setText("Depok");

 

        save_zen.setText("Simpan Data");

        save_zen.addActionListener(new java.awt.event.ActionListener() {

            public void actionPerformed(java.awt.event.ActionEvent evt) {

                save_zenActionPerformed(evt);

            }

        });

 

        tampilkan_zen.setText("Tampilkan Graphics Pie");

        tampilkan_zen.addActionListener(new java.awt.event.ActionListener() {

            public void actionPerformed(java.awt.event.ActionEvent evt) {

                tampilkan_zenActionPerformed(evt);

            }

        });

 

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());

        getContentPane().setLayout(layout);

        layout.setHorizontalGroup(

            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

            .addGroup(layout.createSequentialGroup()

                .addGap(46, 46, 46)

                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)

                    .addComponent(jLabel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)

                    .addComponent(jLabel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)

                    .addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))

                .addGap(49, 49, 49)

                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)

                    .addComponent(zen_nilai1, javax.swing.GroupLayout.DEFAULT_SIZE, 143, Short.MAX_VALUE)

                    .addComponent(zen_nilai2)

                    .addComponent(zen_nilai3))

                .addContainerGap(110, Short.MAX_VALUE))

            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()

                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)

                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)

                    .addComponent(tampilkan_zen, javax.swing.GroupLayout.PREFERRED_SIZE, 143, javax.swing.GroupLayout.PREFERRED_SIZE)

                    .addComponent(save_zen, javax.swing.GroupLayout.PREFERRED_SIZE, 143, javax.swing.GroupLayout.PREFERRED_SIZE))

                .addGap(32, 32, 32))

        );

        layout.setVerticalGroup(

            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

            .addGroup(layout.createSequentialGroup()

                .addGap(51, 51, 51)

                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

                    .addComponent(jLabel1)

                    .addComponent(zen_nilai1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))

                .addGap(18, 18, 18)

                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

                    .addComponent(jLabel2)

                    .addComponent(zen_nilai2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))

                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

                    .addGroup(layout.createSequentialGroup()

                        .addGap(18, 18, 18)

                        .addComponent(zen_nilai3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))

                    .addGroup(layout.createSequentialGroup()

                        .addGap(18, 18, 18)

                        .addComponent(jLabel3)))

                .addGap(25, 25, 25)

                .addComponent(save_zen, javax.swing.GroupLayout.PREFERRED_SIZE, 23, javax.swing.GroupLayout.PREFERRED_SIZE)

                .addGap(18, 18, 18)

                .addComponent(tampilkan_zen)

                .addContainerGap(54, Short.MAX_VALUE))

        );

 

        pack();

    }// </editor-fold>                       

 

    private void save_zenActionPerformed(java.awt.event.ActionEvent evt) {                                        

        // TODO add your handling code here:

        String sql = "insert into grafikpie values (?,?,?)";

      try{

          PreparedStatement stat = conn.prepareStatement(sql);

          stat.setString(1, zen_nilai1.getText());

          stat.setString(2, zen_nilai2.getText());      

          stat.setString(3, zen_nilai3.getText());

         

          stat.executeUpdate();

          JOptionPane.showMessageDialog(null, "Data Berhasil Disimpan");

          zen_nilai1.requestFocus();

      } catch (SQLException e){

            JOptionPane.showMessageDialog(null,"Data Gagal Disimpan"+e);

              }                                       

                                        

    }                                       

 

    private void tampilkan_zenActionPerformed(java.awt.event.ActionEvent evt) {                                             

        // TODO add your handling code here:

        GraphicsPie_Zen g_Zen = new GraphicsPie_Zen();

       

        g_Zen.setNilai(zen_nilai1.getText(), zen_nilai2.getText(), zen_nilai3.getText());

       

        g_Zen.setVisible(true);

                                      

    }                                             

 

    /**

     * @param args the command line arguments

     */

    public static void main(String args[]) {

        /* Set the Nimbus look and feel */

        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">

        /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.

         * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html

         */

        try {

            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {

                if ("Nimbus".equals(info.getName())) {

                    javax.swing.UIManager.setLookAndFeel(info.getClassName());

                    break;

                }

            }

        } catch (ClassNotFoundException ex) {

            java.util.logging.Logger.getLogger(InputGraphicsPie_Zen.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);

        } catch (InstantiationException ex) {

            java.util.logging.Logger.getLogger(InputGraphicsPie_Zen.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);

        } catch (IllegalAccessException ex) {

            java.util.logging.Logger.getLogger(InputGraphicsPie_Zen.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);

        } catch (javax.swing.UnsupportedLookAndFeelException ex) {

            java.util.logging.Logger.getLogger(InputGraphicsPie_Zen.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);

        }

        //</editor-fold>

        //</editor-fold>

 

        /* Create and display the form */

        java.awt.EventQueue.invokeLater(new Runnable() {

            public void run() {

                new InputGraphicsPie_Zen().setVisible(true);

            }

        });

    }

 

    // Variables declaration - do not modify                    

    private javax.swing.JLabel jLabel1;

    private javax.swing.JLabel jLabel2;

    private javax.swing.JLabel jLabel3;

    private javax.swing.JButton save_zen;

    private javax.swing.JButton tampilkan_zen;

    private javax.swing.JTextField zen_nilai1;

    private javax.swing.JTextField zen_nilai2;

    private javax.swing.JTextField zen_nilai3;

    // End of variables declaration                  

}

 

  • Berikut Printscreen nya :

 

 

 

 

  • Lalu kita running program, input nilai dan save

 

  • Tampilkan Graphic Bar seperti berikut :

 

  • Setelah itu buka MySQL untuk melihat angka yang telah terinput

 

  • Lakukan Langkah yang sama pada GraphicInputPie_Zen

 

membua aplikasi database dengan menampilkan hasil grafik sebagai laporannya, Selesai.