




































Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
A java swing code snippet for creating a user interface for managing students and projects. It includes the creation of jbuttons, jlabels, jtextfields, and jscrollpanes, as well as the implementation of actionlisteners and the use of grouplayout for layout management.
Typology: Exercises
1 / 44
This page cannot be seen from the preview
Don't miss anything!





































Assignment No.3 Web Design and Development (CS506) Marks: 20
Due Date: 07/06/
Assignment Solution:
//DbConnection.java
/*
/**
return con; } catch(Exception e){ JOptionPane.showMessageDialog(null, "Uable to connect with database"); return null; } }
//Manage.java
/*
/**
import java.sql.; import java.util.; import javax.swing.*; import net.proteanit.sql.DbUtils; public class Manage extends javax.swing.JFrame {
private Connection con = null; private int studentId = 0; private int projectId = 0;
/**
cbStudentStatus = new javax.swing.JComboBox(); jScrollPane2 = new javax.swing.JScrollPane(); tableStudent = new javax.swing.JTable(); paneProjectCon = new javax.swing.JPanel(); panelProjects = new javax.swing.JPanel(); lbProjectTitle = new javax.swing.JLabel(); lbCurrentPhase = new javax.swing.JLabel(); lbProjectStatus = new javax.swing.JLabel(); tfProjectTitle = new javax.swing.JTextField(); tfCurrentPhase = new javax.swing.JTextField(); bProjectExit = new javax.swing.JButton(); bProjectRefresh = new javax.swing.JButton(); bProjectDelete = new javax.swing.JButton(); bProjectSave = new javax.swing.JButton(); bProjectNew = new javax.swing.JButton(); tfProjectStatus = new javax.swing.JTextField(); lbProjectTitle1 = new javax.swing.JLabel(); cbStudents = new javax.swing.JComboBox(); jScrollPane3 = new javax.swing.JScrollPane(); tableProject = new javax.swing.JTable();
jTable1.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { {null, null, null, null}, {null, null, null, null}, {null, null, null, null}, {null, null, null, null} }, new String [] { "Title 1", "Title 2", "Title 3", "Title 4" }
jScrollPane1.setViewportView(jTable1);
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); setTitle("Project Managment System"); setResizable(false); addWindowListener(new java.awt.event.WindowAdapter() { public void windowOpened(java.awt.event.WindowEvent evt) { formWindowOpened(evt); } });
manageTabs.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { manageTabsMouseClicked(evt); } });
lbStudentName.setText("Student Name:");
lbStudentRollNum.setText("Roll Number:");
lbStudentPhNum.setText("Phone Number:");
lbStudentStudyProgram.setText("Study Program:");
lbStudentStatus.setText("Student Status:");
tfStdName.setMaximumSize(new java.awt.Dimension(6, 20));
tfRollNum.setMaximumSize(new java.awt.Dimension(6, 20));
bStudentSave.setMaximumSize(new java.awt.Dimension(70, 25)); bStudentSave.setMinimumSize(new java.awt.Dimension(70, 25)); bStudentSave.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { bStudentSaveActionPerformed(evt); } });
bStudentNew.setText(" New"); bStudentNew.setMaximumSize(new java.awt.Dimension(70, 25)); bStudentNew.setMinimumSize(new java.awt.Dimension(70, 25)); bStudentNew.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { bStudentNewActionPerformed(evt); } });
tfPhNum.setMaximumSize(new java.awt.Dimension(6, 20));
cbStudentStatus.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Select Status", "A "Blocked" })); cbStudentStatus.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { cbStudentStatusActionPerformed(evt); } });
tableStudent.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { {}, {},
new String [] {
} )); tableStudent.setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR)); tableStudent.setMaximumSize(new java.awt.Dimension(90, 64)); tableStudent.getTableHeader().setReorderingAllowed(false); tableStudent.setUpdateSelectionOnSort(false); tableStudent.setVerifyInputWhenFocusTarget(false); tableStudent.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { tableStudentMouseClicked(evt); } }); jScrollPane2.setViewportView(tableStudent);
tableStudent.getColumnModel().getSelectionModel().setSelectionMode(javax.swing.ListSelectionModel.SIN
javax.swing.GroupLayout panelStudentsLayout = new javax.swing.GroupLayout(panelStudents); panelStudents.setLayout(panelStudentsLayout); panelStudentsLayout.setHorizontalGroup( panelStudentsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelStudentsLayout.createSequentialG .addContainerGap() .addGroup(panelStudentsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEAD .addGroup(panelStudentsLayout.createSequentialGroup() .addGroup(panelStudentsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE .addComponent(lbStudentStudyProgram, javax.swing.GroupLayout.DEFAULT_SIZE,
.addComponent(bStudentSave, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(bStudentDelete, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(bStudentRefresh, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(bStudentExit, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))))) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); panelStudentsLayout.setVerticalGroup( panelStudentsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panelStudentsLayout.createSequentialGroup() .addContainerGap() .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 87, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(18, 18, 18) .addGroup(panelStudentsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASEL .addComponent(lbStudentName) .addComponent(tfStdName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(panelStudentsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASEL .addComponent(lbStudentRollNum) .addComponent(tfRollNum, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(panelStudentsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASEL
.addComponent(lbStudentPhNum) .addComponent(tfPhNum, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(panelStudentsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASEL .addComponent(lbStudentStudyProgram) .addComponent(tfStudyProgram, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(panelStudentsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAIL .addComponent(lbStudentStatus) .addComponent(cbStudentStatus, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(10, 10, 10) .addGroup(panelStudentsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASEL .addComponent(bStudentExit, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(bStudentRefresh, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(bStudentDelete, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(bStudentSave, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(bStudentNew, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addContainerGap(22, Short.MAX_VALUE)) );
javax.swing.GroupLayout paneStudentConLayout = new javax.swing.GroupLayout(paneStudentCon); paneStudentCon.setLayout(paneStudentConLayout); paneStudentConLayout.setHorizontalGroup(
bProjectExit.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { bProjectExitActionPerformed(evt); } });
bProjectRefresh.setText("Refresh"); bProjectRefresh.setMaximumSize(new java.awt.Dimension(70, 25)); bProjectRefresh.setMinimumSize(new java.awt.Dimension(70, 25)); bProjectRefresh.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { bProjectRefreshActionPerformed(evt); } });
bProjectDelete.setText("Delete"); bProjectDelete.setMaximumSize(new java.awt.Dimension(70, 25)); bProjectDelete.setMinimumSize(new java.awt.Dimension(70, 25)); bProjectDelete.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { bProjectDeleteActionPerformed(evt); } });
bProjectSave.setText("Save"); bProjectSave.setMaximumSize(new java.awt.Dimension(70, 25)); bProjectSave.setMinimumSize(new java.awt.Dimension(70, 25)); bProjectSave.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { bProjectSaveActionPerformed(evt); }
bProjectNew.setText(" New"); bProjectNew.setMaximumSize(new java.awt.Dimension(70, 25)); bProjectNew.setMinimumSize(new java.awt.Dimension(70, 25)); bProjectNew.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { bProjectNewActionPerformed(evt); } });
tfProjectStatus.setMaximumSize(new java.awt.Dimension(6, 20)); tfProjectStatus.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { tfProjectStatusActionPerformed(evt); } });
lbProjectTitle1.setText("Student:");
cbStudents.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Select Sudent" }));
tableProject.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { {}, {}, {}, {}, {}, {} },
javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(panelProjectsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE .addGroup(panelProjectsLayout.createSequentialGroup() .addGap(0, 0, Short.MAX_VALUE) .addComponent(bProjectNew, javax.swing.GroupLayout.PREFERRED_SIZE, 66, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(bProjectSave, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(bProjectDelete, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(bProjectRefresh, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(bProjectExit, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addComponent(cbStudents, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_V .addGroup(panelProjectsLayout.createSequentialGroup() .addGroup(panelProjectsLayout.createParallelGroup(javax.swing.GroupLayout.Alignme .addComponent(tfProjectTitle, javax.swing.GroupLayout.DEFAULT_SIZE, 433, Shor .addComponent(tfCurrentPhase, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(tfProjectStatus, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addGap(0, 0, Short.MAX_VALUE)))) .addComponent(jScrollPane3)) .addContainerGap()) );
panelProjectsLayout.setVerticalGroup( panelProjectsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panelProjectsLayout.createSequentialGroup() .addContainerGap() .addComponent(jScrollPane3, javax.swing.GroupLayout.PREFERRED_SIZE, 112, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(18, 18, 18) .addGroup(panelProjectsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASEL .addComponent(cbStudents, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(lbProjectTitle1)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(panelProjectsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASEL .addComponent(tfProjectTitle, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(lbProjectTitle)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(panelProjectsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASEL .addComponent(tfCurrentPhase, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(lbCurrentPhase)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(panelProjectsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASEL .addComponent(tfProjectStatus, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(lbProjectStatus)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addGroup(panelProjectsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASEL .addComponent(bProjectExit, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(bProjectRefresh, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addComponent(manageTabs, javax.swing.GroupLayout.PREFERRED_SIZE, 582, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addComponent(manageTabs, javax.swing.GroupLayout.PREFERRED_SIZE, 344, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) );
pack(); }// </editor-fold>//GEN-END:initComponents
private void populateStudentTable(){ String query = "SELECT " +"* FROM " +"students";
try { PreparedStatement pst = null; ResultSet rs = null; pst = this.con.prepareStatement(query);
rs = pst.executeQuery(); tableStudent.setModel(DbUtils.resultSetToTableModel(rs)); } catch(Exception e){
} }
private void populateProjectTable(){ String query = "SELECT "
PreparedStatement pst = null; ResultSet rs = null;
try { pst = this.con.prepareStatement(query);
rs = pst.executeQuery();
tableProject.setModel(DbUtils.resultSetToTableModel(rs));