⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 教师上传成绩.java

📁 经过调查分析
💻 JAVA
字号:
/*
 * Shangchuanchengji.java
 *
 * Created on 2008年10月16日, 下午7:37
 */

package javaapplication1;
import java.sql.*;
import java.util.*;
import java.awt.*;
import javax.swing.*;
/**
 *
 * @author  mis06
 */
public class 教师上传成绩 extends javax.swing.JPanel {
    int studentNumber=0;
    /** Creates new form Shangchuanchengji */
    public 教师上传成绩() {
        initComponents();
    }
    
    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    // <editor-fold defaultstate="collapsed" desc=" Generated Code ">//GEN-BEGIN:initComponents
    private void initComponents() {
        jLabel1 = new javax.swing.JLabel();
        jComboBox1 = new javax.swing.JComboBox();
        jLabel2 = new javax.swing.JLabel();
        jComboBox2 = new javax.swing.JComboBox();
        jButton1 = new javax.swing.JButton();
        jScrollPane1 = new javax.swing.JScrollPane();
        jTable1 = new javax.swing.JTable();
        jButton2 = new javax.swing.JButton();
        jButton3 = new javax.swing.JButton();

        jLabel1.setText("\u8bfe\u7a0b\u540d");

        jLabel2.setText("\u73ed\u7ea7\u540d");

        jButton1.setText("\u663e\u793a\u6240\u6559\u8bfe\u7a0b\u4e0e\u73ed\u7ea7");
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton1ActionPerformed(evt);
            }
        });

        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, null, null},
                {null, null, null},
                {null, null, null},
                {null, null, null},
                {null, null, null}
            },
            new String [] {
                "学号", "姓名", "成绩"
            }
        ) {
            Class[] types = new Class [] {
                java.lang.String.class, java.lang.String.class, java.lang.Float.class
            };

            public Class getColumnClass(int columnIndex) {
                return types [columnIndex];
            }
        });
        jScrollPane1.setViewportView(jTable1);

        jButton2.setText("\u4e0a\u4f20\u6210\u7ee9");
        jButton2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton2ActionPerformed(evt);
            }
        });

        jButton3.setText("\u67e5\u770b\u4eba\u6570");
        jButton3.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton3ActionPerformed(evt);
            }
        });

        org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(this);
        this.setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(layout.createSequentialGroup()
                .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                    .add(layout.createSequentialGroup()
                        .add(182, 182, 182)
                        .add(jButton1))
                    .add(layout.createSequentialGroup()
                        .add(56, 56, 56)
                        .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                            .add(jScrollPane1, 0, 0, Short.MAX_VALUE)
                            .add(layout.createSequentialGroup()
                                .add(jLabel1)
                                .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                                .add(jComboBox1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 108, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                                .add(59, 59, 59)
                                .add(jLabel2)
                                .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                                .add(jComboBox2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 114, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)))))
                .addContainerGap(220, Short.MAX_VALUE))
            .add(layout.createSequentialGroup()
                .add(188, 188, 188)
                .add(jButton2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 130, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(319, Short.MAX_VALUE))
            .add(layout.createSequentialGroup()
                .add(201, 201, 201)
                .add(jButton3, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 113, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(323, Short.MAX_VALUE))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(layout.createSequentialGroup()
                .add(18, 18, 18)
                .add(jButton1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 34, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                .add(18, 18, 18)
                .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
                    .add(jLabel1)
                    .add(jLabel2)
                    .add(jComboBox2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .add(jComboBox1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
                .add(18, 18, 18)
                .add(jButton3, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 34, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                .add(15, 15, 15)
                .add(jScrollPane1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 199, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                .add(26, 26, 26)
                .add(jButton2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 32, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(104, Short.MAX_VALUE))
        );
    }// </editor-fold>//GEN-END:initComponents

    private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed
    
    String courseName=new String(jComboBox1.getSelectedItem().toString());  
    String className=new String(jComboBox2.getSelectedItem().toString());
    String shuxing=null,courseNumber=null,classNumber=null;
    Statement statement;
    
     try{  
           for(int i=0;i<jTable1.getRowCount();i++)
                for(int j=0;j<jTable1.getColumnCount();j++)
                   jTable1.setValueAt(null,i,j);
          
          
           Connect con=new Connect();
           statement=con.con.createStatement();
           int n=0;
          
            String sql1="select 课程号,选课属性 from 课程 where 课程.课程名='"+courseName+"'" ;   
            ResultSet resultSet=statement.executeQuery(sql1);
           ResultSetMetaData metaData=resultSet.getMetaData();
           int numberOfColumns=metaData.getColumnCount();
           while(resultSet.next()){
               
             for(int i=1;i<=numberOfColumns;i++)
                 courseNumber=resultSet.getObject(1).toString();
                 shuxing=resultSet.getObject(2).toString();
             
             }
            
           int courseLength=courseNumber.length();
           
            if(shuxing.equals("必修")) 
            { 
              String str1="SELECT 班级编号 FROM 班级 WHERE 名称='"+className+"'";
              ResultSet resultSet0=statement.executeQuery(str1);
              while(resultSet0.next()){
            
              classNumber=resultSet0.getObject(1).toString();
               
             }
              
              String sql2="SELECT  学号,姓名 FROM 学生 WHERE 班级编号='"+classNumber+"'";
              ResultSet resultSet1=statement.executeQuery(sql2);
              ResultSetMetaData metaData1=resultSet1.getMetaData();
              int numberOfColumns1=metaData1.getColumnCount();
              while(resultSet1.next()){
                for(int i=1;i<=numberOfColumns1;i++)
                {if(metaData1.getColumnName(i).toString().equals("学号"))
                   jTable1.setValueAt(resultSet1.getObject(i).toString(),n,0);
                 if(metaData1.getColumnName(i).toString().equals("姓名"))
                   jTable1.setValueAt(resultSet1.getObject(i).toString(),n,1);
                  }
                studentNumber++;
                n++;
                }
             }
           
            else{
               int t=0,m=0;
               String sql3="select 学号,姓名,选修课编号 from 学生";
               
              ResultSet resultSet2=statement.executeQuery(sql3);
              ResultSetMetaData metaData2=resultSet2.getMetaData();
              int numberOfColumns2=metaData2.getColumnCount();
              while(resultSet2.next()){
              {  m=0;
                 t=resultSet2.getObject(3).toString().length()/courseLength;
                   for(int j=0;j<t;j++)
                    {
                      if(resultSet2.getObject(3).toString().substring(m,m+courseLength).equals(courseNumber))
                        {  
                          jTable1.setValueAt(resultSet2.getObject(1).toString(),n,0);
                          jTable1.setValueAt(resultSet2.getObject(2).toString(),n,1);
                          studentNumber++; 
                          n++;
                         }
                       m=m+courseLength;
                       }
                   }
               }
            
            }
           JOptionPane.showMessageDialog(null,"请输入成绩");
            
            
            }
          
      
      catch(SQLException sqlException){
        JOptionPane.showMessageDialog(null,sqlException.getMessage(),"Database Error",JOptionPane.ERROR_MESSAGE);
        System.exit(1);}

     catch(ClassNotFoundException classNotFound){
       JOptionPane.showMessageDialog(null,classNotFound.getMessage(),"Driver Not Found",JOptionPane.ERROR_MESSAGE);
        System.exit(1); }  
// TODO add your handling code here:
    }//GEN-LAST:event_jButton3ActionPerformed

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
    
    String str1=null,str2=null;
    Statement statement;
    
     try{  
         
         
           
           Connect con=new Connect();
           statement=con.con.createStatement();
           
           String sql1="SELECT distinct 课程名 FROM 课表,课程 WHERE 教师编号=(SELECT 编号 FROM 用户 WHERE 状态='登录')  AND 课程.课程号=课表.课程号 ";
           ResultSet resultSet=statement.executeQuery(sql1);
           while(resultSet.next()){
            
              jComboBox1.addItem(resultSet.getObject(1).toString());
               
             }
           
          
           String sql2="SELECT distinct 名称 FROM 课表,班级 WHERE 教师编号=(SELECT 编号 FROM 用户 WHERE 状态='登录')  AND 班级.班级编号=课表.班级编号";
           ResultSet resultSet1=statement.executeQuery(sql2);
           while(resultSet1.next()){
             
              jComboBox2.addItem(resultSet1.getObject(1).toString());
               
             }
           
           
            
        }
      
      catch(SQLException sqlException){
        JOptionPane.showMessageDialog(null,sqlException.getMessage(),"Database Error",JOptionPane.ERROR_MESSAGE);
        System.exit(1);}

     catch(ClassNotFoundException classNotFound){
       JOptionPane.showMessageDialog(null,classNotFound.getMessage(),"Driver Not Found",JOptionPane.ERROR_MESSAGE);
        System.exit(1); }// TODO add your handling code here:
    }//GEN-LAST:event_jButton1ActionPerformed

    private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed
     
    Statement statement;
    String str5=null;
     try{  
           String courseName=new String(jComboBox1.getSelectedItem().toString());
           String courseNumber=null,sql=null;
          
           Connect con=new Connect();
           statement=con.con.createStatement();
          
           sql="SELECT 课程号 FROM 课程 WHERE 课程名='"+courseName+"'";
           ResultSet resultSet2=statement.executeQuery(sql);
           ResultSetMetaData metaData2=resultSet2.getMetaData();
           int numberOfColumns2=metaData2.getColumnCount();
           while(resultSet2.next())
           {
                for(int i=1;i<=numberOfColumns2;i++)
                    courseNumber=resultSet2.getObject(i).toString();
           }
     
          
            
           
           for(int i=0;i<studentNumber;i++)  
           { int reg=0;
             str5="INSERT INTO 成绩(学号,课程号,成绩) VALUES('"+jTable1.getValueAt(i,0)+"','"+courseNumber+"','"+jTable1.getValueAt(i,2)+"')";
             reg=statement.executeUpdate(str5);
           }
           
            
           JOptionPane.showMessageDialog(null,"成功上传上载!");
           for(int t1=0;t1<jTable1.getRowCount();t1++)
                    for(int t2=0;t2<jTable1.getColumnCount();t2++)
                        jTable1.setValueAt(null,t1,t2);
        
     }
      
      catch(SQLException sqlException){
        JOptionPane.showMessageDialog(null,sqlException.getMessage(),"Database Error",JOptionPane.ERROR_MESSAGE);
        System.exit(1);}

     catch(ClassNotFoundException classNotFound){
       JOptionPane.showMessageDialog(null,classNotFound.getMessage(),"Driver Not Found",JOptionPane.ERROR_MESSAGE);
        System.exit(1); }
    // TODO add your handling code here:
    }//GEN-LAST:event_jButton2ActionPerformed
    
    
    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton jButton1;
    private javax.swing.JButton jButton2;
    private javax.swing.JButton jButton3;
    private javax.swing.JComboBox jComboBox1;
    private javax.swing.JComboBox jComboBox2;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JTable jTable1;
    // End of variables declaration//GEN-END:variables
    
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -