Advertisement
stevennathaniel

Input Data ke Database PostgreSQL Menggunakan jComboBox

Feb 16th, 2015
368
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 15.72 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 latihan12;
  7.  
  8. import javax.swing.JComboBox;
  9.  
  10. import javax.swing.SwingUtilities;
  11.  
  12. import javax.swing.JTable;
  13.  
  14. import java.sql.Connection;
  15.  
  16. import java.sql.DriverManager;
  17.  
  18. import java.sql.ResultSet;
  19.  
  20. import java.sql.ResultSetMetaData;
  21.  
  22. import java.sql.Statement;
  23.  
  24. import java.util.logging.Level;
  25.  
  26. import javax.swing.table.DefaultTableModel;
  27.  
  28. import java.sql.*;
  29.  
  30. import java.util.*;
  31.  
  32. import java.util.Locale;
  33.  
  34. import java.util.Vector;
  35.  
  36.  
  37.  
  38. /**
  39.  *
  40.  * @author steven
  41.  */
  42. public class FrameJComboBox14 extends javax.swing.JFrame {
  43.  
  44.     /**
  45.      * Creates new form FrameJComboBox14
  46.      */
  47.     public FrameJComboBox14() {
  48.         initComponents();
  49.        
  50.        
  51.         jComboBox1.addItem("steven nathaniel");
  52.        
  53.         jComboBox1.addItem("yulia mulyawati");
  54.        
  55.         jComboBox1.addItem("noviah dwi lestyorini");
  56.        
  57.        
  58.         jComboBox2.addItem("steven");
  59.        
  60.         jComboBox2.addItem("meni");
  61.        
  62.         jComboBox2.addItem("novi");
  63.        
  64.        
  65.         Connection koneksi = null;
  66.        
  67.         Statement stmt = null;
  68.        
  69.         String query = "SELECT id,namalengkap,namapanggilan FROM vector1";
  70.        
  71.         String url = "jdbc:postgresql://localhost:5432/pdam";
  72.        
  73.         String user = "steven";
  74.        
  75.         String password = "kucing";
  76.        
  77.        
  78.         try{
  79.            
  80.            
  81.             koneksi = DriverManager.getConnection(url,user,password);
  82.            
  83.             stmt = koneksi.createStatement();
  84.            
  85.             ResultSet rs = stmt.executeQuery(query);
  86.            
  87.             ResultSetMetaData rsmd = rs.getMetaData();
  88.            
  89.            
  90.             Vector<Vector> coba2 = new Vector<Vector>();
  91.            
  92.             while(rs.next()){
  93.                
  94.                
  95.                 Vector<String> isiBaris = new Vector<String>();
  96.                
  97.                 isiBaris.add(rs.getString("id"));
  98.                
  99.                 isiBaris.add(rs.getString("namalengkap"));
  100.                
  101.                 isiBaris.add(rs.getString("namapanggilan"));
  102.                
  103.                
  104.                 coba2.add(isiBaris);
  105.                
  106.                
  107.                
  108.                 Vector<String> namaKolom = new Vector<String>();
  109.                
  110.                 namaKolom.addElement(rsmd.getColumnLabel(1));
  111.                
  112.                 namaKolom.addElement(rsmd.getColumnLabel(2));
  113.                
  114.                 namaKolom.addElement(rsmd.getColumnLabel(3));
  115.                
  116.                
  117.                 DefaultTableModel tabel1 = new DefaultTableModel(coba2,namaKolom);
  118.                
  119.                 jTable1.setModel(tabel1);
  120.                
  121.                 koneksi.close();
  122.                
  123.                
  124.                
  125.             }
  126.            
  127.            
  128.         }catch (SQLException ex){
  129.            
  130.            
  131.             ex.printStackTrace();
  132.            
  133.            
  134.         }
  135.        
  136.        
  137.        
  138.     }
  139.  
  140.     /**
  141.      * This method is called from within the constructor to initialize the form.
  142.      * WARNING: Do NOT modify this code. The content of this method is always
  143.      * regenerated by the Form Editor.
  144.      */
  145.     @SuppressWarnings("unchecked")
  146.     // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
  147.     private void initComponents() {
  148.  
  149.         jLabel1 = new javax.swing.JLabel();
  150.         jLabel2 = new javax.swing.JLabel();
  151.         jLabel3 = new javax.swing.JLabel();
  152.         jTextField1 = new javax.swing.JTextField();
  153.         jComboBox1 = new javax.swing.JComboBox();
  154.         jComboBox2 = new javax.swing.JComboBox();
  155.         jScrollPane1 = new javax.swing.JScrollPane();
  156.         jTable1 = new javax.swing.JTable();
  157.         jButton1 = new javax.swing.JButton();
  158.         jButton2 = new javax.swing.JButton();
  159.         jButton3 = new javax.swing.JButton();
  160.  
  161.         setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
  162.  
  163.         jLabel1.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  164.         jLabel1.setText("ID");
  165.  
  166.         jLabel2.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  167.         jLabel2.setText("Nama Lengkap");
  168.  
  169.         jLabel3.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  170.         jLabel3.setText("Nama Panggilan");
  171.  
  172.         jTextField1.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  173.         jTextField1.setEnabled(false);
  174.  
  175.         jComboBox1.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  176.  
  177.         jComboBox2.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  178.  
  179.         jTable1.setModel(new javax.swing.table.DefaultTableModel(
  180.             new Object [][] {
  181.                 {null, null, null, null},
  182.                 {null, null, null, null},
  183.                 {null, null, null, null},
  184.                 {null, null, null, null}
  185.             },
  186.             new String [] {
  187.                 "Title 1", "Title 2", "Title 3", "Title 4"
  188.             }
  189.         ));
  190.         jScrollPane1.setViewportView(jTable1);
  191.  
  192.         jButton1.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  193.         jButton1.setText("Simpan");
  194.         jButton1.addActionListener(new java.awt.event.ActionListener() {
  195.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  196.                 jButton1ActionPerformed(evt);
  197.             }
  198.         });
  199.  
  200.         jButton2.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  201.         jButton2.setText("Edit");
  202.  
  203.         jButton3.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  204.         jButton3.setText("Simpan Ulang");
  205.  
  206.         javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
  207.         getContentPane().setLayout(layout);
  208.         layout.setHorizontalGroup(
  209.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  210.             .addGroup(layout.createSequentialGroup()
  211.                 .addContainerGap()
  212.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
  213.                     .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 509, Short.MAX_VALUE)
  214.                     .addGroup(layout.createSequentialGroup()
  215.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  216.                             .addComponent(jLabel2)
  217.                             .addComponent(jLabel3)
  218.                             .addComponent(jLabel1))
  219.                         .addGap(18, 18, 18)
  220.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
  221.                             .addComponent(jComboBox1, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  222.                             .addComponent(jComboBox2, 0, 258, Short.MAX_VALUE)
  223.                             .addComponent(jTextField1))
  224.                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  225.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
  226.                             .addComponent(jButton3)
  227.                             .addComponent(jButton2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  228.                             .addComponent(jButton1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))
  229.                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
  230.         );
  231.         layout.setVerticalGroup(
  232.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  233.             .addGroup(layout.createSequentialGroup()
  234.                 .addContainerGap()
  235.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  236.                     .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  237.                         .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE)
  238.                         .addComponent(jLabel1))
  239.                     .addComponent(jButton1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 38, javax.swing.GroupLayout.PREFERRED_SIZE))
  240.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  241.                     .addGroup(layout.createSequentialGroup()
  242.                         .addGap(8, 8, 8)
  243.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  244.                             .addGroup(layout.createSequentialGroup()
  245.                                 .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 27, javax.swing.GroupLayout.PREFERRED_SIZE)
  246.                                 .addGap(10, 10, 10))
  247.                             .addGroup(layout.createSequentialGroup()
  248.                                 .addComponent(jComboBox1)
  249.                                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED))))
  250.                     .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
  251.                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  252.                         .addComponent(jButton2, javax.swing.GroupLayout.PREFERRED_SIZE, 40, javax.swing.GroupLayout.PREFERRED_SIZE)
  253.                         .addGap(6, 6, 6)))
  254.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  255.                     .addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE)
  256.                     .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  257.                         .addComponent(jButton3, javax.swing.GroupLayout.PREFERRED_SIZE, 43, javax.swing.GroupLayout.PREFERRED_SIZE)
  258.                         .addComponent(jComboBox2, javax.swing.GroupLayout.PREFERRED_SIZE, 35, javax.swing.GroupLayout.PREFERRED_SIZE)))
  259.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
  260.                 .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 293, javax.swing.GroupLayout.PREFERRED_SIZE)
  261.                 .addContainerGap())
  262.         );
  263.  
  264.         pack();
  265.     }// </editor-fold>                        
  266.  
  267.     private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                        
  268.         // TODO add your handling code here:
  269.        
  270.         String namaLengkap = jComboBox1.getSelectedItem().toString();
  271.        
  272.         String namaPanggilan = jComboBox2.getSelectedItem().toString();
  273.        
  274.        
  275.         Connection koneksi = null;
  276.        
  277.         Statement stmt = null;
  278.        
  279.         PreparedStatement PSInsert = null;
  280.        
  281.         String query = "SELECT id,namalengkap,namapanggilan FROM vector1";
  282.        
  283.         String masukanData = "INSERT INTO vector1" + "(namalengkap,namapanggilan)VALUES" + "(?,?)";
  284.        
  285.         String url = "jdbc:postgresql://localhost:5432/pdam";
  286.        
  287.         String user = "steven";
  288.        
  289.         String password = "kucing";
  290.        
  291.        
  292.        
  293.         try{
  294.            
  295.            
  296.             koneksi = DriverManager.getConnection(url,user,password);
  297.            
  298.             PSInsert = koneksi.prepareStatement(masukanData);
  299.            
  300.             PSInsert.setString(1, namaLengkap);
  301.            
  302.             PSInsert.setString(2, namaPanggilan);
  303.            
  304.            
  305.             PSInsert.executeUpdate();
  306.            
  307.             stmt = koneksi.createStatement();
  308.            
  309.             ResultSet rs = stmt.executeQuery(query);
  310.            
  311.             ResultSetMetaData rsmd = rs.getMetaData();
  312.            
  313.            
  314.             Vector<Vector> coba2 = new Vector<Vector>();
  315.            
  316.             while(rs.next()){
  317.            
  318.             Vector<String> isiBaris = new Vector<String>();
  319.            
  320.             isiBaris.add(rs.getString("id"));
  321.            
  322.             isiBaris.add(rs.getString("namalengkap"));
  323.            
  324.             isiBaris.add(rs.getString("namapanggilan"));
  325.            
  326.             coba2.add(isiBaris);
  327.            
  328.            
  329.             Vector<String> namaKolom = new Vector<String>();
  330.            
  331.             namaKolom.addElement(rsmd.getColumnLabel(1));
  332.            
  333.             namaKolom.addElement(rsmd.getColumnLabel(2));
  334.            
  335.             namaKolom.addElement(rsmd.getColumnLabel(3));
  336.            
  337.            
  338.             DefaultTableModel tabel1 = new DefaultTableModel(coba2,namaKolom);
  339.            
  340.             jTable1.setModel(tabel1);
  341.            
  342.            
  343.             koneksi.close();
  344.            
  345.            
  346.             jComboBox1.setSelectedIndex(0);
  347.            
  348.             jComboBox2.setSelectedIndex(0);
  349.            
  350.            
  351.         }
  352.        
  353.            
  354.         }catch (SQLException ex){
  355.            
  356.             ex.printStackTrace();
  357.            
  358.            
  359.         }
  360.        
  361.     }                                        
  362.  
  363.     /**
  364.      * @param args the command line arguments
  365.      */
  366.     public static void main(String args[]) {
  367.         /* Set the Nimbus look and feel */
  368.         //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
  369.         /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
  370.          * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
  371.          */
  372.         try {
  373.             for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
  374.                 if ("Nimbus".equals(info.getName())) {
  375.                     javax.swing.UIManager.setLookAndFeel(info.getClassName());
  376.                     break;
  377.                 }
  378.             }
  379.         } catch (ClassNotFoundException ex) {
  380.             java.util.logging.Logger.getLogger(FrameJComboBox14.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  381.         } catch (InstantiationException ex) {
  382.             java.util.logging.Logger.getLogger(FrameJComboBox14.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  383.         } catch (IllegalAccessException ex) {
  384.             java.util.logging.Logger.getLogger(FrameJComboBox14.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  385.         } catch (javax.swing.UnsupportedLookAndFeelException ex) {
  386.             java.util.logging.Logger.getLogger(FrameJComboBox14.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  387.         }
  388.         //</editor-fold>
  389.  
  390.         /* Create and display the form */
  391.         java.awt.EventQueue.invokeLater(new Runnable() {
  392.             public void run() {
  393.                 new FrameJComboBox14().setVisible(true);
  394.             }
  395.         });
  396.     }
  397.  
  398.     // Variables declaration - do not modify                    
  399.     private javax.swing.JButton jButton1;
  400.     private javax.swing.JButton jButton2;
  401.     private javax.swing.JButton jButton3;
  402.     private javax.swing.JComboBox jComboBox1;
  403.     private javax.swing.JComboBox jComboBox2;
  404.     private javax.swing.JLabel jLabel1;
  405.     private javax.swing.JLabel jLabel2;
  406.     private javax.swing.JLabel jLabel3;
  407.     private javax.swing.JScrollPane jScrollPane1;
  408.     private javax.swing.JTable jTable1;
  409.     private javax.swing.JTextField jTextField1;
  410.     // End of variables declaration                  
  411. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement