Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on May 15th, 2012  |  syntax: Java  |  size: 20.50 KB  |  hits: 19  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. /*
  2.  * To change this template, choose Tools | Templates
  3.  * and open the template in the editor.
  4.  */
  5. package adminside;
  6.  
  7. import java.sql.*;
  8. import javax.swing.JScrollPane;
  9. import javax.swing.JTable;
  10.  
  11. /**
  12.  *
  13.  * @author Nomi
  14.  */
  15. public class NewJFrame extends javax.swing.JFrame {
  16.    
  17.     private final static String DATABASE_URL = "jdbc:mysql://localhost/Employee";
  18.     private final static String USERNAME = "root";
  19.     private final static String PASSWORD = "Nomi1";
  20.     private ResultSetTableModel tableModel;
  21.     // keep track of database connection status
  22.     private static final String DEFAULT_QUERY = "SELECT * FROM Account";
  23.    
  24.  
  25.     /*
  26.      * This constructor is used to create the object to call the methods.
  27.      */
  28.     public NewJFrame(String s)
  29.     {
  30.         // Default constructor to call methods.
  31.     }
  32.    
  33.     /**
  34.      * Creates new form NewJFrame
  35.      */
  36.     public NewJFrame() {
  37.         initComponents();
  38.         try {
  39.             tableModel = new ResultSetTableModel( DATABASE_URL,
  40.             USERNAME, PASSWORD, DEFAULT_QUERY );
  41.              resultTable.setModel(tableModel);
  42.         } catch (SQLException e) {
  43.             e.printStackTrace();
  44.         }
  45.     }
  46.    
  47.    
  48.    
  49.  
  50.     /**
  51.      * This method is called from within the constructor to initialize the form.
  52.      * WARNING: Do NOT modify this code. The content of this method is always
  53.      * regenerated by the Form Editor.
  54.      */
  55.     @SuppressWarnings("unchecked")
  56.     // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
  57.     private void initComponents() {
  58.  
  59.         jScrollPane2 = new javax.swing.JScrollPane();
  60.         resultTable = new javax.swing.JTable();
  61.         jLabelUserId = new javax.swing.JLabel();
  62.         jLabelUserName = new javax.swing.JLabel();
  63.         jLabelPassword = new javax.swing.JLabel();
  64.         jLabelFirstName = new javax.swing.JLabel();
  65.         jTextFieldUserId = new javax.swing.JTextField();
  66.         jTextFieldUserName = new javax.swing.JTextField();
  67.         jTextFieldPassword = new javax.swing.JTextField();
  68.         jTextFieldFirstName = new javax.swing.JTextField();
  69.         jButtonUpdateUserName = new javax.swing.JButton();
  70.         jButtonUpdatePassword = new javax.swing.JButton();
  71.         jButtonUpdateFirstName = new javax.swing.JButton();
  72.         jPanel1 = new javax.swing.JPanel();
  73.         jTextFieldLastName = new javax.swing.JTextField();
  74.         jButtonUpdateLastName = new javax.swing.JButton();
  75.         jLabelLastName = new javax.swing.JLabel();
  76.         jButtonAddUser = new javax.swing.JButton();
  77.         jButtonDeleteUser = new javax.swing.JButton();
  78.  
  79.         setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
  80.  
  81.         resultTable.setModel(new javax.swing.table.DefaultTableModel(
  82.             new Object [][] {
  83.                 {null, null, null, null},
  84.                 {null, null, null, null},
  85.                 {null, null, null, null},
  86.                 {null, null, null, null}
  87.             },
  88.             new String [] {
  89.                 "Title 1", "Title 2", "Title 3", "Title 4"
  90.             }
  91.         ));
  92.         jScrollPane2.setViewportView(resultTable);
  93.  
  94.         jLabelUserId.setText("UserId");
  95.  
  96.         jLabelUserName.setText("UserName");
  97.  
  98.         jLabelPassword.setText("Password");
  99.  
  100.         jLabelFirstName.setText("FirstName");
  101.  
  102.         jTextFieldUserId.addActionListener(new java.awt.event.ActionListener() {
  103.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  104.                 jTextFieldUserIdActionPerformed(evt);
  105.             }
  106.         });
  107.  
  108.         jTextFieldUserName.addActionListener(new java.awt.event.ActionListener() {
  109.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  110.                 jTextFieldUserNameActionPerformed(evt);
  111.             }
  112.         });
  113.  
  114.         jTextFieldFirstName.addActionListener(new java.awt.event.ActionListener() {
  115.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  116.                 jTextFieldFirstNameActionPerformed(evt);
  117.             }
  118.         });
  119.  
  120.         jButtonUpdateUserName.setText("Update UserName");
  121.         jButtonUpdateUserName.addActionListener(new java.awt.event.ActionListener() {
  122.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  123.                 jButtonUpdateUserNameActionPerformed(evt);
  124.             }
  125.         });
  126.  
  127.         jButtonUpdatePassword.setText("Update Password");
  128.         jButtonUpdatePassword.addActionListener(new java.awt.event.ActionListener() {
  129.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  130.                 jButtonUpdatePasswordActionPerformed(evt);
  131.             }
  132.         });
  133.  
  134.         jButtonUpdateFirstName.setText("Update FirstName");
  135.         jButtonUpdateFirstName.addActionListener(new java.awt.event.ActionListener() {
  136.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  137.                 jButtonUpdateFirstNameActionPerformed(evt);
  138.             }
  139.         });
  140.  
  141.         jTextFieldLastName.addActionListener(new java.awt.event.ActionListener() {
  142.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  143.                 jTextFieldLastNameActionPerformed(evt);
  144.             }
  145.         });
  146.  
  147.         jButtonUpdateLastName.setText("Update LastName");
  148.         jButtonUpdateLastName.addActionListener(new java.awt.event.ActionListener() {
  149.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  150.                 jButtonUpdateLastNameActionPerformed(evt);
  151.             }
  152.         });
  153.  
  154.         jLabelLastName.setText("LastName");
  155.  
  156.         jButtonAddUser.setText("Add User");
  157.         jButtonAddUser.addActionListener(new java.awt.event.ActionListener() {
  158.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  159.                 jButtonAddUserActionPerformed(evt);
  160.             }
  161.         });
  162.  
  163.         javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
  164.         jPanel1.setLayout(jPanel1Layout);
  165.         jPanel1Layout.setHorizontalGroup(
  166.             jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  167.             .addGroup(jPanel1Layout.createSequentialGroup()
  168.                 .addContainerGap()
  169.                 .addComponent(jLabelLastName, javax.swing.GroupLayout.PREFERRED_SIZE, 105, javax.swing.GroupLayout.PREFERRED_SIZE)
  170.                 .addContainerGap())
  171.             .addGroup(jPanel1Layout.createSequentialGroup()
  172.                 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  173.                     .addComponent(jButtonUpdateLastName)
  174.                     .addGroup(jPanel1Layout.createSequentialGroup()
  175.                         .addComponent(jTextFieldLastName, javax.swing.GroupLayout.PREFERRED_SIZE, 104, javax.swing.GroupLayout.PREFERRED_SIZE)
  176.                         .addGap(18, 18, 18)
  177.                         .addComponent(jButtonAddUser)))
  178.                 .addGap(0, 67, Short.MAX_VALUE))
  179.         );
  180.         jPanel1Layout.setVerticalGroup(
  181.             jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  182.             .addGroup(jPanel1Layout.createSequentialGroup()
  183.                 .addGap(21, 21, 21)
  184.                 .addComponent(jLabelLastName)
  185.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
  186.                 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  187.                     .addComponent(jTextFieldLastName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  188.                     .addComponent(jButtonAddUser))
  189.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 17, Short.MAX_VALUE)
  190.                 .addComponent(jButtonUpdateLastName))
  191.         );
  192.  
  193.         jButtonDeleteUser.setText("Test Hours Addition");
  194.         jButtonDeleteUser.addActionListener(new java.awt.event.ActionListener() {
  195.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  196.                 jButtonDeleteUserActionPerformed(evt);
  197.             }
  198.         });
  199.  
  200.         javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
  201.         getContentPane().setLayout(layout);
  202.         layout.setHorizontalGroup(
  203.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  204.             .addGroup(layout.createSequentialGroup()
  205.                 .addContainerGap()
  206.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  207.                     .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 375, javax.swing.GroupLayout.PREFERRED_SIZE)
  208.                     .addGroup(layout.createSequentialGroup()
  209.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
  210.                             .addComponent(jButtonDeleteUser)
  211.                             .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
  212.                                 .addComponent(jTextFieldUserId, javax.swing.GroupLayout.Alignment.LEADING)
  213.                                 .addComponent(jLabelUserId, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 77, Short.MAX_VALUE)))
  214.                         .addGap(18, 18, 18)
  215.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  216.                             .addGroup(layout.createSequentialGroup()
  217.                                 .addComponent(jButtonUpdateUserName)
  218.                                 .addGap(18, 18, 18)
  219.                                 .addComponent(jButtonUpdatePassword)
  220.                                 .addGap(18, 18, 18)
  221.                                 .addComponent(jButtonUpdateFirstName))
  222.                             .addGroup(layout.createSequentialGroup()
  223.                                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  224.                                     .addComponent(jTextFieldUserName, javax.swing.GroupLayout.PREFERRED_SIZE, 77, javax.swing.GroupLayout.PREFERRED_SIZE)
  225.                                     .addComponent(jLabelUserName, javax.swing.GroupLayout.PREFERRED_SIZE, 109, javax.swing.GroupLayout.PREFERRED_SIZE))
  226.                                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  227.                                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
  228.                                     .addComponent(jLabelPassword, javax.swing.GroupLayout.DEFAULT_SIZE, 134, Short.MAX_VALUE)
  229.                                     .addComponent(jTextFieldPassword))
  230.                                 .addGap(18, 18, 18)
  231.                                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
  232.                                     .addComponent(jLabelFirstName, javax.swing.GroupLayout.DEFAULT_SIZE, 118, Short.MAX_VALUE)
  233.                                     .addComponent(jTextFieldFirstName))))
  234.                         .addGap(18, 18, 18)
  235.                         .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
  236.                 .addContainerGap(330, Short.MAX_VALUE))
  237.         );
  238.         layout.setVerticalGroup(
  239.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  240.             .addGroup(layout.createSequentialGroup()
  241.                 .addContainerGap()
  242.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
  243.                     .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  244.                     .addGroup(layout.createSequentialGroup()
  245.                         .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 257, javax.swing.GroupLayout.PREFERRED_SIZE)
  246.                         .addGap(18, 18, 18)
  247.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  248.                             .addComponent(jLabelUserId)
  249.                             .addComponent(jLabelUserName)
  250.                             .addComponent(jLabelPassword)
  251.                             .addComponent(jLabelFirstName))
  252.                         .addGap(18, 18, 18)
  253.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  254.                             .addComponent(jTextFieldUserId, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  255.                             .addComponent(jTextFieldUserName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  256.                             .addComponent(jTextFieldPassword, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  257.                             .addComponent(jTextFieldFirstName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
  258.                         .addGap(18, 18, 18)
  259.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  260.                             .addComponent(jButtonUpdateUserName)
  261.                             .addComponent(jButtonUpdatePassword)
  262.                             .addComponent(jButtonUpdateFirstName))))
  263.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 18, Short.MAX_VALUE)
  264.                 .addComponent(jButtonDeleteUser)
  265.                 .addGap(50, 50, 50))
  266.         );
  267.  
  268.         pack();
  269.     }// </editor-fold>                        
  270.  
  271.     private void jTextFieldUserIdActionPerformed(java.awt.event.ActionEvent evt) {                                                
  272.         // TODO add your handling code here:
  273.         tableModel.searchUserId(Integer.parseInt(jTextFieldUserId.getText()));
  274.         updateFields();
  275.     }                                                
  276.  
  277.     private void jTextFieldUserNameActionPerformed(java.awt.event.ActionEvent evt) {                                                  
  278.         // TODO add your handling code here:
  279.         tableModel.searchUserName(jTextFieldUserName.getText());
  280.         updateFields();
  281.     }                                                  
  282.  
  283.     private void jTextFieldFirstNameActionPerformed(java.awt.event.ActionEvent evt) {                                                    
  284.         // TODO add your handling code here:
  285.         tableModel.searchFirstName(jTextFieldFirstName.getText());
  286.         updateFields();
  287.     }                                                  
  288.  
  289.     private void jTextFieldLastNameActionPerformed(java.awt.event.ActionEvent evt) {                                                  
  290.         // TODO add your handling code here:
  291.         tableModel.searchLastName(jTextFieldLastName.getText());
  292.         updateFields();
  293.     }                                                  
  294.  
  295.     private void jButtonUpdateUserNameActionPerformed(java.awt.event.ActionEvent evt) {                                                      
  296.         // TODO add your handling code here:
  297.         tableModel.updateUserName(Integer.parseInt(jTextFieldUserId.getText()), jTextFieldUserName.getText());
  298.     }                                                    
  299.  
  300.     private void jButtonUpdatePasswordActionPerformed(java.awt.event.ActionEvent evt) {                                                      
  301.         // TODO add your handling code here:
  302.         tableModel.updatePassword(Integer.parseInt(jTextFieldUserId.getText()), jTextFieldPassword.getText());
  303.     }                                                    
  304.  
  305.     private void jButtonUpdateFirstNameActionPerformed(java.awt.event.ActionEvent evt) {                                                      
  306.         // TODO add your handling code here:
  307.         tableModel.updateFirstName(Integer.parseInt(jTextFieldUserId.getText()), jTextFieldFirstName.getText());
  308.     }                                                      
  309.  
  310.     private void jButtonUpdateLastNameActionPerformed(java.awt.event.ActionEvent evt) {                                                      
  311.         // TODO add your handling code here:
  312.         tableModel.updateLastName(Integer.parseInt(jTextFieldUserId.getText()), jTextFieldLastName.getText());
  313.     }                                                    
  314.  
  315.     private void jButtonDeleteUserActionPerformed(java.awt.event.ActionEvent evt) {                                                  
  316.         // TODO add your handling code here:
  317.         tableModel.deleteUser(Integer.parseInt(jTextFieldUserId.getText()));
  318.     }                                                
  319.  
  320.     private void jButtonAddUserActionPerformed(java.awt.event.ActionEvent evt) {                                              
  321.         // TODO add your handling code here:
  322.         tableModel.addUser(jTextFieldUserName.getText(), jTextFieldPassword.getText(), jTextFieldFirstName.getText(), jTextFieldLastName.getText());
  323.     }                                              
  324.  
  325.     public void updateFields()
  326.     {
  327.         jTextFieldUserId.setText(String.valueOf(tableModel.getCurrentUserId()));
  328.         jTextFieldUserName.setText(tableModel.getCurrentUserName());
  329.         jTextFieldPassword.setText(tableModel.getCurrentPassword());
  330.         jTextFieldFirstName.setText(tableModel.getCurrentFirstName());
  331.         jTextFieldLastName.setText(tableModel.getCurrentLastName());
  332.     }
  333.    
  334.     /**
  335.      * @param args the command line arguments
  336.      */
  337.     public static void main(String args[]) {
  338.         /*
  339.          * Set the Nimbus look and feel
  340.          */
  341.         //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
  342.         /*
  343.          * If Nimbus (introduced in Java SE 6) is not available, stay with the
  344.          * default look and feel. For details see
  345.          * http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
  346.          */
  347.         try {
  348.             for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
  349.                 if ("Nimbus".equals(info.getName())) {
  350.                     javax.swing.UIManager.setLookAndFeel(info.getClassName());
  351.                     break;
  352.                 }
  353.             }
  354.         } catch (ClassNotFoundException ex) {
  355.             java.util.logging.Logger.getLogger(NewJFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  356.         } catch (InstantiationException ex) {
  357.             java.util.logging.Logger.getLogger(NewJFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  358.         } catch (IllegalAccessException ex) {
  359.             java.util.logging.Logger.getLogger(NewJFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  360.         } catch (javax.swing.UnsupportedLookAndFeelException ex) {
  361.             java.util.logging.Logger.getLogger(NewJFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  362.         }
  363.         //</editor-fold>
  364.  
  365.         /*
  366.          * Create and display the form
  367.          */
  368.         java.awt.EventQueue.invokeLater(new Runnable() {
  369.  
  370.             public void run() {
  371.                 new NewJFrame().setVisible(true);
  372.             }
  373.         });
  374.     }
  375.     // Variables declaration - do not modify                    
  376.     private javax.swing.JButton jButtonAddUser;
  377.     private javax.swing.JButton jButtonDeleteUser;
  378.     private javax.swing.JButton jButtonUpdateFirstName;
  379.     private javax.swing.JButton jButtonUpdateLastName;
  380.     private javax.swing.JButton jButtonUpdatePassword;
  381.     private javax.swing.JButton jButtonUpdateUserName;
  382.     private javax.swing.JLabel jLabelFirstName;
  383.     private javax.swing.JLabel jLabelLastName;
  384.     private javax.swing.JLabel jLabelPassword;
  385.     private javax.swing.JLabel jLabelUserId;
  386.     private javax.swing.JLabel jLabelUserName;
  387.     private javax.swing.JPanel jPanel1;
  388.     private javax.swing.JScrollPane jScrollPane2;
  389.     private javax.swing.JTextField jTextFieldFirstName;
  390.     private javax.swing.JTextField jTextFieldLastName;
  391.     private javax.swing.JTextField jTextFieldPassword;
  392.     private javax.swing.JTextField jTextFieldUserId;
  393.     private javax.swing.JTextField jTextFieldUserName;
  394.     private javax.swing.JTable resultTable;
  395.     // End of variables declaration                  
  396. }