Advertisement
andoraiko

Form Data Mahasiswa

Nov 21st, 2020
854
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 29.79 KB | None | 0 0
  1. /*
  2.  * To change this license header, choose License Headers in Project Properties.
  3.  * To change this template file, choose Tools | Templates
  4.  * and open the template in the editor.
  5.  */
  6. package crud.sederhana;
  7.  
  8. /**
  9.  *
  10.  * @author Fernando
  11.  */
  12. import java.sql.*;
  13. import javax.swing.*;
  14. import javax.swing.table.DefaultTableModel;
  15.  
  16. public class FormMahasiswa extends javax.swing.JFrame {
  17.  
  18.     private Connection koneksi;
  19.  
  20.     public FormMahasiswa() {
  21.         initComponents();
  22.         KoneksiDatabase();
  23.         TampilData();
  24.         setLocationRelativeTo(this);
  25.     }
  26.  
  27.     @SuppressWarnings("unchecked")
  28.     // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
  29.     private void initComponents() {
  30.  
  31.         buttonGroup1 = new javax.swing.ButtonGroup();
  32.         Jpanel = new javax.swing.JPanel();
  33.         jLabel2 = new javax.swing.JLabel();
  34.         jLabel3 = new javax.swing.JLabel();
  35.         jLabel4 = new javax.swing.JLabel();
  36.         jLabel5 = new javax.swing.JLabel();
  37.         txtnim = new javax.swing.JTextField();
  38.         txtnama = new javax.swing.JTextField();
  39.         txtsemester = new javax.swing.JTextField();
  40.         cbjurusan = new javax.swing.JComboBox<>();
  41.         bsimpan = new javax.swing.JButton();
  42.         bbatal = new javax.swing.JButton();
  43.         bcari = new javax.swing.JButton();
  44.         jLabel7 = new javax.swing.JLabel();
  45.         rblaki = new javax.swing.JRadioButton();
  46.         rbperempuan = new javax.swing.JRadioButton();
  47.         jLabelHeaderFormMahasiswa = new javax.swing.JLabel();
  48.         bubah = new javax.swing.JButton();
  49.         bhapus = new javax.swing.JButton();
  50.         bkeluar = new javax.swing.JButton();
  51.         jPanel2 = new javax.swing.JPanel();
  52.         jScrollPane1 = new javax.swing.JScrollPane();
  53.         tblmahasiswa = new javax.swing.JTable();
  54.         jLabelHeaderTabelMahasiswa = new javax.swing.JLabel();
  55.         jLabel6 = new javax.swing.JLabel();
  56.  
  57.         setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
  58.  
  59.         Jpanel.setBackground(new java.awt.Color(255, 255, 255));
  60.  
  61.         jLabel2.setText("NIM");
  62.  
  63.         jLabel3.setText("Nama Mahasiswa");
  64.  
  65.         jLabel4.setText("Jurusan");
  66.  
  67.         jLabel5.setText("Semester");
  68.  
  69.         cbjurusan.setModel(new javax.swing.DefaultComboBoxModel<>(new String[] { "PILIH JURUSAN", "TEKNIK INFORMATIKA", "EKONOMI", "HUKUM", "SASTRA", "FKIP" }));
  70.         cbjurusan.addActionListener(new java.awt.event.ActionListener() {
  71.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  72.                 cbjurusanActionPerformed(evt);
  73.             }
  74.         });
  75.  
  76.         bsimpan.setText("Simpan");
  77.         bsimpan.addActionListener(new java.awt.event.ActionListener() {
  78.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  79.                 bsimpanActionPerformed(evt);
  80.             }
  81.         });
  82.  
  83.         bbatal.setText("Batal");
  84.         bbatal.addActionListener(new java.awt.event.ActionListener() {
  85.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  86.                 bbatalActionPerformed(evt);
  87.             }
  88.         });
  89.  
  90.         bcari.setText("Cari");
  91.         bcari.addActionListener(new java.awt.event.ActionListener() {
  92.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  93.                 bcariActionPerformed(evt);
  94.             }
  95.         });
  96.  
  97.         jLabel7.setText("Jenis Kelamin");
  98.  
  99.         buttonGroup1.add(rblaki);
  100.         rblaki.setText("Pria");
  101.  
  102.         buttonGroup1.add(rbperempuan);
  103.         rbperempuan.setText("Wanita");
  104.  
  105.         jLabelHeaderFormMahasiswa.setBackground(new java.awt.Color(0, 0, 51));
  106.         jLabelHeaderFormMahasiswa.setFont(new java.awt.Font("Tahoma", 1, 24)); // NOI18N
  107.         jLabelHeaderFormMahasiswa.setForeground(new java.awt.Color(255, 255, 255));
  108.         jLabelHeaderFormMahasiswa.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
  109.         jLabelHeaderFormMahasiswa.setText("FORM MAHASISWA");
  110.         jLabelHeaderFormMahasiswa.setOpaque(true);
  111.  
  112.         bubah.setText("Ubah");
  113.         bubah.addActionListener(new java.awt.event.ActionListener() {
  114.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  115.                 bubahActionPerformed(evt);
  116.             }
  117.         });
  118.  
  119.         bhapus.setText("Hapus");
  120.         bhapus.addActionListener(new java.awt.event.ActionListener() {
  121.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  122.                 bhapusActionPerformed(evt);
  123.             }
  124.         });
  125.  
  126.         bkeluar.setText("Keluar");
  127.         bkeluar.addActionListener(new java.awt.event.ActionListener() {
  128.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  129.                 bkeluarActionPerformed(evt);
  130.             }
  131.         });
  132.  
  133.         javax.swing.GroupLayout JpanelLayout = new javax.swing.GroupLayout(Jpanel);
  134.         Jpanel.setLayout(JpanelLayout);
  135.         JpanelLayout.setHorizontalGroup(
  136.             JpanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  137.             .addGroup(JpanelLayout.createSequentialGroup()
  138.                 .addContainerGap()
  139.                 .addComponent(jLabelHeaderFormMahasiswa, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  140.                 .addContainerGap())
  141.             .addGroup(JpanelLayout.createSequentialGroup()
  142.                 .addGap(26, 26, 26)
  143.                 .addGroup(JpanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  144.                     .addGroup(JpanelLayout.createSequentialGroup()
  145.                         .addGroup(JpanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  146.                             .addGroup(JpanelLayout.createSequentialGroup()
  147.                                 .addGap(133, 133, 133)
  148.                                 .addGroup(JpanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
  149.                                     .addComponent(bcari, javax.swing.GroupLayout.PREFERRED_SIZE, 93, javax.swing.GroupLayout.PREFERRED_SIZE)
  150.                                     .addGroup(JpanelLayout.createSequentialGroup()
  151.                                         .addComponent(bbatal, javax.swing.GroupLayout.PREFERRED_SIZE, 92, javax.swing.GroupLayout.PREFERRED_SIZE)
  152.                                         .addGap(129, 129, 129))))
  153.                             .addGroup(JpanelLayout.createSequentialGroup()
  154.                                 .addComponent(bsimpan, javax.swing.GroupLayout.PREFERRED_SIZE, 93, javax.swing.GroupLayout.PREFERRED_SIZE)
  155.                                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 261, javax.swing.GroupLayout.PREFERRED_SIZE)))
  156.                         .addContainerGap(29, Short.MAX_VALUE))
  157.                     .addGroup(JpanelLayout.createSequentialGroup()
  158.                         .addGroup(JpanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
  159.                             .addGroup(JpanelLayout.createSequentialGroup()
  160.                                 .addGroup(JpanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  161.                                     .addComponent(jLabel2)
  162.                                     .addComponent(jLabel3)
  163.                                     .addComponent(jLabel5)
  164.                                     .addComponent(jLabel4)
  165.                                     .addComponent(jLabel7))
  166.                                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  167.                                 .addGroup(JpanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  168.                                     .addGroup(JpanelLayout.createSequentialGroup()
  169.                                         .addComponent(rblaki, javax.swing.GroupLayout.PREFERRED_SIZE, 78, javax.swing.GroupLayout.PREFERRED_SIZE)
  170.                                         .addGap(18, 18, 18)
  171.                                         .addComponent(rbperempuan, javax.swing.GroupLayout.PREFERRED_SIZE, 85, javax.swing.GroupLayout.PREFERRED_SIZE))
  172.                                     .addGroup(JpanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
  173.                                         .addGroup(JpanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
  174.                                             .addComponent(txtnama, javax.swing.GroupLayout.DEFAULT_SIZE, 207, Short.MAX_VALUE)
  175.                                             .addComponent(txtsemester, javax.swing.GroupLayout.PREFERRED_SIZE, 53, javax.swing.GroupLayout.PREFERRED_SIZE)
  176.                                             .addComponent(txtnim)
  177.                                             .addComponent(cbjurusan, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
  178.                                         .addComponent(bkeluar, javax.swing.GroupLayout.PREFERRED_SIZE, 92, javax.swing.GroupLayout.PREFERRED_SIZE))))
  179.                             .addGroup(JpanelLayout.createSequentialGroup()
  180.                                 .addComponent(bubah, javax.swing.GroupLayout.PREFERRED_SIZE, 92, javax.swing.GroupLayout.PREFERRED_SIZE)
  181.                                 .addGap(41, 41, 41)
  182.                                 .addComponent(bhapus, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  183.                                 .addGap(129, 129, 129)))
  184.                         .addGap(29, 29, 29))))
  185.         );
  186.         JpanelLayout.setVerticalGroup(
  187.             JpanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  188.             .addGroup(JpanelLayout.createSequentialGroup()
  189.                 .addContainerGap()
  190.                 .addComponent(jLabelHeaderFormMahasiswa, javax.swing.GroupLayout.PREFERRED_SIZE, 56, javax.swing.GroupLayout.PREFERRED_SIZE)
  191.                 .addGap(15, 15, 15)
  192.                 .addGroup(JpanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  193.                     .addComponent(txtnim, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  194.                     .addComponent(jLabel2))
  195.                 .addGap(18, 18, 18)
  196.                 .addGroup(JpanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  197.                     .addComponent(txtnama, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  198.                     .addComponent(jLabel3))
  199.                 .addGap(17, 17, 17)
  200.                 .addGroup(JpanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  201.                     .addComponent(rblaki)
  202.                     .addComponent(rbperempuan)
  203.                     .addComponent(jLabel7))
  204.                 .addGap(18, 18, 18)
  205.                 .addGroup(JpanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  206.                     .addComponent(cbjurusan, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  207.                     .addComponent(jLabel4))
  208.                 .addGap(18, 18, 18)
  209.                 .addGroup(JpanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  210.                     .addComponent(txtsemester, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  211.                     .addComponent(jLabel5))
  212.                 .addGap(24, 24, 24)
  213.                 .addGroup(JpanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  214.                     .addComponent(bsimpan)
  215.                     .addComponent(bbatal)
  216.                     .addComponent(bcari, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
  217.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
  218.                 .addGroup(JpanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  219.                     .addComponent(bubah)
  220.                     .addComponent(bhapus)
  221.                     .addComponent(bkeluar))
  222.                 .addContainerGap(10, Short.MAX_VALUE))
  223.         );
  224.  
  225.         jPanel2.setBackground(new java.awt.Color(255, 255, 255));
  226.  
  227.         tblmahasiswa.setModel(new javax.swing.table.DefaultTableModel(
  228.             new Object [][] {
  229.                 {null, null, null, null, null},
  230.                 {null, null, null, null, null},
  231.                 {null, null, null, null, null},
  232.                 {null, null, null, null, null},
  233.                 {null, null, null, null, null},
  234.                 {null, null, null, null, null},
  235.                 {null, null, null, null, null},
  236.                 {null, null, null, null, null},
  237.                 {null, null, null, null, null},
  238.                 {null, null, null, null, null},
  239.                 {null, null, null, null, null},
  240.                 {null, null, null, null, null},
  241.                 {null, null, null, null, null},
  242.                 {null, null, null, null, null},
  243.                 {null, null, null, null, null},
  244.                 {null, null, null, null, null},
  245.                 {null, null, null, null, null},
  246.                 {null, null, null, null, null}
  247.             },
  248.             new String [] {
  249.                 "NIM", "Nama Mahasiswa", "Jenis Kelamin", "Jurusan", "Semester"
  250.             }
  251.         ));
  252.         tblmahasiswa.addMouseListener(new java.awt.event.MouseAdapter() {
  253.             public void mouseClicked(java.awt.event.MouseEvent evt) {
  254.                 tblmahasiswaMouseClicked(evt);
  255.             }
  256.         });
  257.         jScrollPane1.setViewportView(tblmahasiswa);
  258.  
  259.         jLabelHeaderTabelMahasiswa.setBackground(new java.awt.Color(0, 0, 51));
  260.         jLabelHeaderTabelMahasiswa.setFont(new java.awt.Font("Tahoma", 1, 24)); // NOI18N
  261.         jLabelHeaderTabelMahasiswa.setForeground(new java.awt.Color(255, 255, 255));
  262.         jLabelHeaderTabelMahasiswa.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
  263.         jLabelHeaderTabelMahasiswa.setText("DATA MAHASISWA");
  264.         jLabelHeaderTabelMahasiswa.setOpaque(true);
  265.  
  266.         javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
  267.         jPanel2.setLayout(jPanel2Layout);
  268.         jPanel2Layout.setHorizontalGroup(
  269.             jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  270.             .addGroup(jPanel2Layout.createSequentialGroup()
  271.                 .addContainerGap()
  272.                 .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  273.                     .addComponent(jLabelHeaderTabelMahasiswa, javax.swing.GroupLayout.DEFAULT_SIZE, 611, Short.MAX_VALUE)
  274.                     .addComponent(jScrollPane1))
  275.                 .addContainerGap())
  276.         );
  277.         jPanel2Layout.setVerticalGroup(
  278.             jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  279.             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
  280.                 .addContainerGap()
  281.                 .addComponent(jLabelHeaderTabelMahasiswa, javax.swing.GroupLayout.PREFERRED_SIZE, 56, javax.swing.GroupLayout.PREFERRED_SIZE)
  282.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  283.                 .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)
  284.                 .addContainerGap())
  285.         );
  286.  
  287.         jLabel6.setText("FERNANDO D. H. ROTTY - 181021400222");
  288.  
  289.         javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
  290.         getContentPane().setLayout(layout);
  291.         layout.setHorizontalGroup(
  292.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  293.             .addGroup(layout.createSequentialGroup()
  294.                 .addContainerGap()
  295.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  296.                     .addGroup(layout.createSequentialGroup()
  297.                         .addComponent(Jpanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  298.                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  299.                         .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
  300.                     .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
  301.                         .addGap(0, 0, Short.MAX_VALUE)
  302.                         .addComponent(jLabel6)))
  303.                 .addContainerGap())
  304.         );
  305.         layout.setVerticalGroup(
  306.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  307.             .addGroup(layout.createSequentialGroup()
  308.                 .addContainerGap()
  309.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
  310.                     .addComponent(Jpanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  311.                     .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
  312.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  313.                 .addComponent(jLabel6)
  314.                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
  315.         );
  316.  
  317.         pack();
  318.     }// </editor-fold>                        
  319.  
  320.     private void bbatalActionPerformed(java.awt.event.ActionEvent evt) {                                      
  321.         txtnim.setText("");
  322.         txtnama.setText("");
  323.         cbjurusan.setSelectedIndex(-0);
  324.         txtsemester.setText("");
  325.         txtnim.requestFocus();
  326.     }                                      
  327.  
  328.     private void bsimpanActionPerformed(java.awt.event.ActionEvent evt) {                                        
  329.         String nim = txtnim.getText();
  330.         String nama = txtnama.getText();
  331.         String jeniskelamin = null;
  332.         if (rblaki.isSelected()) {
  333.             jeniskelamin = "Laki-Laki";
  334.         } else if (rbperempuan.isSelected()) {
  335.             jeniskelamin = "Perempuan";
  336.         }
  337.         String jurusan = (String) cbjurusan.getSelectedItem();
  338.         String semester = txtsemester.getText();
  339.  
  340.         if (txtnim.getText().trim().equals("")) {
  341.             JOptionPane.showMessageDialog(null, "Mohon Masukan Data Untuk Di Input", "PERHATIAN", JOptionPane.WARNING_MESSAGE);
  342.         } else {
  343.             try {
  344.                 java.sql.Statement stat = koneksi.createStatement();
  345.                 ResultSet data = stat.executeQuery("SELECT * FROM tabelmahasiswa WHERE nim ='" + txtnim.getText() + "'");
  346.                 if (data.next()) {
  347.                     JOptionPane.showMessageDialog(null, "NIM Sudah Ada", "PERHATIAN", JOptionPane.WARNING_MESSAGE);
  348.                     txtnim.requestFocus();
  349.                 } else {
  350.                     String sql = "INSERT INTO tabelmahasiswa VALUES('" + nim + "'"
  351.                             + ",'" + nama + "'"
  352.                             + ",'" + jeniskelamin + "'"
  353.                             + ",'" + jurusan + "'"
  354.                             + ",'" + semester + "')";
  355.                     stat.executeUpdate(sql);
  356.                     txtnim.setText("");
  357.                     txtnama.setText("");
  358.                     cbjurusan.setSelectedIndex(-0);
  359.                     txtsemester.setText("");
  360.                     txtnim.requestFocus();
  361.                     JOptionPane.showMessageDialog(null, "Data Berhasil Di Simpan", "SUKSES", JOptionPane.INFORMATION_MESSAGE);
  362.                     TampilData();
  363.                 }
  364.                 stat.close();
  365.             } catch (Exception exc) {
  366.                 System.err.println("Terjadi Kesalahan :" + exc);
  367.             }
  368.         }
  369.     }                                      
  370.  
  371.     private void tblmahasiswaMouseClicked(java.awt.event.MouseEvent evt) {                                          
  372.         int baris = tblmahasiswa.getSelectedRow();
  373.         if (baris != -1) {
  374.             txtnim.setText(tblmahasiswa.getValueAt(baris, 0).toString());
  375.             txtnama.setText(tblmahasiswa.getValueAt(baris, 1).toString());
  376.             if ("Laki-Laki".equals(tblmahasiswa.getValueAt(baris, 2).toString())) {
  377.                 rblaki.setSelected(true);
  378.             } else {
  379.                 rbperempuan.setSelected(true);
  380.             }
  381.         }
  382.         cbjurusan.setSelectedItem(tblmahasiswa.getValueAt(baris, 3).toString());
  383.         txtsemester.setText(tblmahasiswa.getValueAt(baris, 4).toString());
  384.     }                                        
  385.  
  386.     private void bcariActionPerformed(java.awt.event.ActionEvent evt) {                                      
  387.         try {
  388.             java.sql.Statement stat = koneksi.createStatement();
  389.             ResultSet data = stat.executeQuery("SELECT * FROM tabelmahasiswa WHERE " + "nim='" + txtnim.getText() + "'");
  390.             DefaultTableModel model = new DefaultTableModel();
  391.             model.addColumn("NIM");
  392.             model.addColumn("Nama Mahasiswa");
  393.             model.addColumn("Jenis Kelamin");
  394.             model.addColumn("Jurusan");
  395.             model.addColumn("Semester");
  396.             tblmahasiswa.setModel(model);
  397.  
  398.             if (data.next()) {
  399.                 model.addRow(new Object[]{
  400.                     data.getString("nim"),
  401.                     data.getString("nama"),
  402.                     data.getString("jenis_kelamin"),
  403.                     data.getString("jurusan"),
  404.                     data.getString("semester")
  405.                 });
  406.                 tblmahasiswa.setModel(model);
  407.             } else {
  408.                 JOptionPane.showMessageDialog(null, "Data Tidak Ditemukan", "WARNING", JOptionPane.WARNING_MESSAGE);
  409.             }
  410.             stat.close();
  411.         } catch (Exception e) {
  412.             System.err.println("Terjadi Kesalahan :" + e);
  413.         }
  414.     }                                    
  415.  
  416.     private void bhapusActionPerformed(java.awt.event.ActionEvent evt) {                                      
  417.         int ok = JOptionPane.showConfirmDialog(null, "Apakah anda yakin ingin menghapus data ini?", "Konfirmasi Dialog", JOptionPane.YES_NO_OPTION);
  418.         if (ok == 0) {
  419.             String sql = "DELETE FROM tabelmahasiswa WHERE nim='" + txtnim.getText().trim() + "'";
  420.             try {
  421.                 Statement stat = koneksi.createStatement();
  422.                 stat.executeUpdate(sql);
  423.                 JOptionPane.showMessageDialog(null, "Data Berhasil di Hapus", "Hapus Data", JOptionPane.INFORMATION_MESSAGE);
  424.                 stat.close();
  425.                 txtnim.setText("");
  426.                 txtnama.setText("");
  427.                 cbjurusan.setSelectedIndex(-0);
  428.                 txtsemester.setText("");
  429.                 txtnim.requestFocus();
  430.                 TampilData();
  431.             } catch (Exception exc) {
  432.                 System.err.println(sql);
  433.                 System.err.println("Error : " + exc);
  434.             }
  435.         }
  436.     }                                      
  437.  
  438.     private void bubahActionPerformed(java.awt.event.ActionEvent evt) {                                      
  439.         int ok = JOptionPane.showConfirmDialog(null, "Apakah anda yakin ingin mengubah data ini?", "Konfirmasi Dialog", JOptionPane.YES_NO_OPTION);
  440.         if (ok == 0) {
  441.         String jeniskelamin = null;
  442.         if (rblaki.isSelected()) {
  443.             jeniskelamin = "Laki-Laki";
  444.         } else if (rbperempuan.isSelected()) {
  445.             jeniskelamin = "Perempuan";
  446.         }
  447.         String sql = "update tabelmahasiswa set nama='" + txtnama.getText()
  448.                 + "',jenis_kelamin='" + jeniskelamin
  449.                 + "',jurusan='" + cbjurusan.getSelectedItem()
  450.                 + "',semester='" + txtsemester.getText()
  451.                 + "'where nim='" + txtnim.getText().trim() + "'";
  452.         if (txtnim.getText().trim().equals("")) {
  453.             JOptionPane.showMessageDialog(null, "Data Masih Kosong!", "Ubah Data", JOptionPane.WARNING_MESSAGE);
  454.             txtnim.requestFocus();
  455.         } else {
  456.             try {
  457.                 Statement stat = koneksi.createStatement();
  458.                 stat.executeUpdate(sql);
  459.                 JOptionPane.showMessageDialog(null, "Data Berhasil di Ubah", "Ubah Data", JOptionPane.INFORMATION_MESSAGE);
  460.                 stat.close();
  461.                 txtnim.requestFocus();
  462.                 TampilData();
  463.             } catch (Exception exc) {
  464.                 System.err.println("Error :" + exc);
  465.             }
  466.           }
  467.         }
  468.     }                                    
  469.  
  470.     private void bkeluarActionPerformed(java.awt.event.ActionEvent evt) {                                        
  471.         if (JOptionPane.showConfirmDialog(null, "Apakah Anda Yakin Ingin Keluar?", "Terima Kasih Atas Perhatiannya", JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) {
  472.             System.exit(0);
  473.         }
  474.     }                                      
  475.  
  476.     private void cbjurusanActionPerformed(java.awt.event.ActionEvent evt) {                                          
  477.         // TODO add your handling code here:
  478.     }                                        
  479.  
  480.     /**
  481.      * @param args the command line arguments
  482.      */
  483.     public static void main(String args[]) {
  484.         /* Set the Nimbus look and feel */
  485.         //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
  486.         /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
  487.          * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
  488.          */
  489.         try {
  490.             for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
  491.                 if ("Nimbus".equals(info.getName())) {
  492.                     javax.swing.UIManager.setLookAndFeel(info.getClassName());
  493.                     break;
  494.                 }
  495.             }
  496.         } catch (ClassNotFoundException ex) {
  497.             java.util.logging.Logger.getLogger(FormMahasiswa.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  498.         } catch (InstantiationException ex) {
  499.             java.util.logging.Logger.getLogger(FormMahasiswa.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  500.         } catch (IllegalAccessException ex) {
  501.             java.util.logging.Logger.getLogger(FormMahasiswa.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  502.         } catch (javax.swing.UnsupportedLookAndFeelException ex) {
  503.             java.util.logging.Logger.getLogger(FormMahasiswa.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  504.         }
  505.         //</editor-fold>
  506.  
  507.         /* Create and display the form */
  508.         java.awt.EventQueue.invokeLater(new Runnable() {
  509.             public void run() {
  510.                 JOptionPane.showMessageDialog(null, "Selamat Datang");
  511.                 new FormMahasiswa().setVisible(true);
  512.             }
  513.         });
  514.     }
  515.     // Variables declaration - do not modify                    
  516.     private javax.swing.JPanel Jpanel;
  517.     private javax.swing.JButton bbatal;
  518.     private javax.swing.JButton bcari;
  519.     private javax.swing.JButton bhapus;
  520.     private javax.swing.JButton bkeluar;
  521.     private javax.swing.JButton bsimpan;
  522.     private javax.swing.JButton bubah;
  523.     private javax.swing.ButtonGroup buttonGroup1;
  524.     private javax.swing.JComboBox<String> cbjurusan;
  525.     private javax.swing.JLabel jLabel2;
  526.     private javax.swing.JLabel jLabel3;
  527.     private javax.swing.JLabel jLabel4;
  528.     private javax.swing.JLabel jLabel5;
  529.     private javax.swing.JLabel jLabel6;
  530.     private javax.swing.JLabel jLabel7;
  531.     private javax.swing.JLabel jLabelHeaderFormMahasiswa;
  532.     private javax.swing.JLabel jLabelHeaderTabelMahasiswa;
  533.     private javax.swing.JPanel jPanel2;
  534.     private javax.swing.JScrollPane jScrollPane1;
  535.     private javax.swing.JRadioButton rblaki;
  536.     private javax.swing.JRadioButton rbperempuan;
  537.     private javax.swing.JTable tblmahasiswa;
  538.     private javax.swing.JTextField txtnama;
  539.     private javax.swing.JTextField txtnim;
  540.     private javax.swing.JTextField txtsemester;
  541.     // End of variables declaration                  
  542.  
  543.     private void TampilData() {
  544.         //membuat tampilan model tabel
  545.         DefaultTableModel model = new DefaultTableModel();
  546.         model.addColumn("NIM");
  547.         model.addColumn("Nama Mahasiswa");
  548.         model.addColumn("Jenis Kelamin");
  549.         model.addColumn("Jurusan");
  550.         model.addColumn("Semester");
  551.         tblmahasiswa.setModel(model);
  552.  
  553.         //menampilkan data database kedalam tabel
  554.         try {
  555.             java.sql.Statement stat = koneksi.createStatement();
  556.             ResultSet data = stat.executeQuery("SELECT * FROM tabelmahasiswa");
  557.             while (data.next()) {
  558.                 model.addRow(new Object[]{
  559.                     data.getString("nim"),
  560.                     data.getString("nama"),
  561.                     data.getString("jenis_kelamin"),
  562.                     data.getString("jurusan"),
  563.                     data.getString("semester")
  564.                 });
  565.                 tblmahasiswa.setModel(model);
  566.             }
  567.         } catch (SQLException e) {
  568.             System.err.println("Terjadi Kesalahan :" + e);
  569.         }
  570.     }
  571.    
  572.     private void KoneksiDatabase() {
  573.         try {
  574.             Class.forName("com.mysql.jdbc.Driver");
  575.         } catch (ClassNotFoundException cnf) {
  576.         }
  577.         try {
  578.             koneksi = DriverManager.getConnection("jdbc:mysql://localhost/dbmahasiswa", "root", "");
  579.             System.out.println("Koneksi Database Berhasil");
  580.         } catch (SQLException se) {
  581.             System.out.println("Koneksi Database Gagal :" + se);
  582.         } catch (Exception e) {
  583.         }
  584.     }
  585. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement