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

📄 jpanel2.java

📁 学生管理系统
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
        ShowFrame show = new ShowFrame();
        show.setVisible(true);

      }
    }
    else if (e.getSource() == jButton2) {

      jCheckBox1.setSelected(false);
      jCheckBox2.setSelected(false);
      jCheckBox3.setSelected(false);
      jCheckBox4.setSelected(false);
      jCheckBox5.setSelected(false);
      String num="0";
      if(!jTextField6.getText().equals(""))
       num= jTextField6.getText().trim();
      String str = "jdbc:odbc:yangAcess";
      Connection con;

      String sSelect =
          "select 姓名,成绩1,成绩2,成绩3,成绩4,成绩5,学号,(成绩1+成绩2+成绩3+成绩4+成绩5)/5.0 from yang1 where 学号=" +
          num;
      ResultSet rs;

      try {
        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        con = DriverManager.getConnection(str);
        Statement stmt = con.createStatement();
        rs = stmt.executeQuery(sSelect);

        while (rs.next()) {

          std.姓名 = rs.getString("姓名");

          std.成绩1 = rs.getInt("成绩1");
          std.成绩2 = rs.getInt("成绩2");
          std.成绩3 = rs.getInt("成绩3");
          std.成绩4 = rs.getInt("成绩4");
          std.成绩5 = rs.getInt("成绩5");

          std.学号 = rs.getInt("学号");
          std.平均成绩 = rs.getDouble(8);
        }

        con.close();
        stmt.close();
      }
      catch (Exception se) {}
      if (std.学号 == Integer.parseInt(num)) {
        jCheckBox1.setEnabled(true);
        jCheckBox2.setEnabled(true);
        jCheckBox3.setEnabled(true);
        jCheckBox4.setEnabled(true);
        jCheckBox5.setEnabled(true);

        make();
      }
      else {
        jLabel20.setText("你输入的学号不存在");
        jTextField2.setText("");
        jTextField3.setText("");
        jTextField4.setText("");
        jTextField5.setText("");
        jTextField1.setText("");
        jTextField6.setText("");
        jTextField7.setText("");
        jTextField8.setText("");

      }
    }
    else if (e.getSource() == jButton3) {

      if (jCheckBox1.isSelected() == true) {
        search(1);
        jLabel8.setText("最高分  最低分  名次  平均分");
        jLabel9.setText(Integer.toString(mar[0].最高分));
        jLabel11.setText(Integer.toString(mar[0].最低分));
        jLabel12.setText(Integer.toString(mar[0].名次));
        jLabel13.setText(Double.toString(mar[0].平均分));
      }
      if (jCheckBox2.isSelected() == true) {
        search(2);
        jLabel8.setText("最高分  最低分  名次  平均分");
        jLabel14.setText(Integer.toString(mar[1].最高分));
        jLabel15.setText(Integer.toString(mar[1].最低分));
        jLabel16.setText(Integer.toString(mar[1].名次));
        jLabel17.setText(Double.toString(mar[1].平均分));
      }
      if (jCheckBox3.isSelected() == true) {
        search(3);
        jLabel8.setText("最高分  最低分  名次  平均分");
        jLabel18.setText(Integer.toString(mar[2].最高分));
        jLabel19.setText(Integer.toString(mar[2].最低分));
        jLabel110.setText(Integer.toString(mar[2].名次));
        jLabel111.setText(Double.toString(mar[2].平均分));
      }
      if (jCheckBox4.isSelected() == true) {
        search(4);
        jLabel8.setText("最高分  最低分  名次  平均分");
        jLabel112.setText(Integer.toString(mar[3].最高分));
        jLabel113.setText(Integer.toString(mar[3].最低分));
        jLabel114.setText(Integer.toString(mar[3].名次));
        jLabel115.setText(Double.toString(mar[3].平均分));
      }
      if (jCheckBox5.isSelected() == true) {
        search(5);
        jLabel8.setText("最高分  最低分  名次  平均分");
        jLabel116.setText(Integer.toString(mar[4].最高分));
        jLabel117.setText(Integer.toString(mar[4].最低分));
        jLabel118.setText(Integer.toString(mar[4].名次));
        jLabel119.setText(Double.toString(mar[4].平均分));
      }
    }
  }

  private class ShowFrame
      extends JFrame implements ActionListener {
    JButton btn1, btn2;
    public ShowFrame() {
      this.setSize(400, 200);
      this.setLocation(200, 200);
      Container con = this.getContentPane();
      con.setLayout(new FlowLayout());

      JLabel jb = new JLabel("此学号已存在,你想重置吗?");
      jb.setForeground(Color.magenta);
      jb.setFont(new java.awt.Font("Dialog", 0, 25));
      btn1 = new JButton("确    定");
      btn1.setForeground(Color.magenta);
      btn1.setFont(new java.awt.Font("Dialog", 0, 15));
      btn2 = new JButton("取    消");
      btn2.setForeground(Color.magenta);
      btn2.setFont(new java.awt.Font("Dialog", 0, 15));
      con.add(jb);
      con.add(btn1);
      con.add(btn2);
      btn1.addActionListener(this);
      btn2.addActionListener(this);
    }

    public void actionPerformed(ActionEvent e) {
      if (e.getSource() == btn1) {
        bool = true;
        this.setVisible(false);
        getDate();
        updata();
      }
      else if (e.getSource() == btn2) {
        bool = false;
        this.setVisible(false);
      }
    }
  }

  public void getDate() {
    if (!jTextField1.getText().equals("")) {
      std.成绩5 = Integer.parseInt(jTextField1.getText());
    }
    if (!jTextField2.getText().equals("")) {
      std.成绩4 = Integer.parseInt(jTextField2.getText());
    }
    if (!jTextField3.getText().equals("")) {
      std.成绩3 = Integer.parseInt(jTextField3.getText());
    }
    if (!jTextField4.getText().equals("")) {
      std.成绩2 = Integer.parseInt(jTextField4.getText());
    }
    if (!jTextField5.getText().equals("")) {
      std.成绩1 = Integer.parseInt(jTextField5.getText());
    }
    if (!jTextField6.getText().equals("")) {
      std.学号 = Integer.parseInt(jTextField6.getText());
    }
    if (!jTextField7.getText().equals("")) {
      std.姓名 = jTextField7.getText();
    }

  }

  public void insert() {
    if (std.学号 != 0) {
      String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
      String ur1 = "jdbc:odbc:yangAcess";

      Connection conn;
      int age = 0;
      Statement statement;

      try {

        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        conn = DriverManager.getConnection(ur1);

        PreparedStatement pstmt = conn.prepareStatement(
            "insert into yang1 values(?,?,'',?,?,?,?,?,0,'','','',0,0,0,0,0)");
        {
          pstmt.setInt(1, std.学号);

          pstmt.setString(2, std.姓名);
          pstmt.setInt(3, std.成绩1);
          pstmt.setInt(4, std.成绩2);
          pstmt.setInt(5, std.成绩3);
          pstmt.setInt(6, std.成绩4);
          pstmt.setInt(7, std.成绩5);

        }

        pstmt.executeUpdate();

        pstmt.close();
        conn.close();

      }
      catch (Exception e) {
        e.printStackTrace();

      }

    }
  }

  public void updata() {
    if (std.学号 != 0) {
      String str = "jdbc:odbc:yangAcess";
      Connection con;
      // String str1 =
      //"update yang1 set 姓名='"+std.姓名+"',成绩1="+std.成绩1+",成绩2="+std.成绩2+",成绩3="+std.成绩3+
      //",成绩4="+std.成绩4+",成绩5="+std.成绩5+ "where 学号="+std.学号;
      String str1 =
          "update yang1 set 姓名='" + std.姓名 + "',成绩1=" + std.成绩1 + ",成绩2=" +
          std.成绩2 + ",成绩3=" + std.成绩3 + ",成绩4=" + std.成绩4 + ",成绩5=" + std.成绩5 +
          " where 学号=" + std.学号;
      try {
        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        con = DriverManager.getConnection(str);
        Statement update = con.createStatement();
        /**********************************************
           update.setString(1, std.姓名);
           update.setInt(2, std.成绩1);
           update.setInt(3, std.成绩2);
           update.setInt(4, std.成绩3);
           update.setInt(5, std.成绩4);
           update.setInt(6, std.成绩5);
          update.setInt(7, std.学号);
         ******************************************/

        update.executeUpdate(str1);
        con.close();
        update.close();

      }
      catch (Exception ae) {
        System.out.print("lk;ag;oiuje");
      }
    }
  }

  public void search(int num) {
    String url = "jdbc:odbc:yangAcess";
    Connection con;
    ResultSet rs;
    String str2 = "";
    String str1 = "";
    switch (num) {
      case 1:
        mar[0] = new mark();
        str1 = "select avg(成绩1),max(成绩1),min(成绩1) from yang1";

        str2 = "select count(成绩1) from yang1 where 成绩1>=" + std.成绩1;
        try {
          Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
          con = DriverManager.getConnection(url);
          Statement stmt = con.createStatement();
          rs = stmt.executeQuery(str1);
          while (rs.next()) {
            mar[0].平均分 = rs.getDouble(1);
            mar[0].最高分 = rs.getInt(2);
            mar[0].最低分 = rs.getInt(3);

          }
          rs = stmt.executeQuery(str2);
          while (rs.next()) {
            mar[0].名次 = rs.getInt(1);
          }
        }
        catch (Exception e) {}

        break
            ;
      case 2:
        mar[1] = new mark();
        str1 = "select avg(成绩2),max(成绩2),min(成绩2) from yang1";
        str2 = "select count(成绩2) from yang1 where 成绩2>=" + std.成绩2;
        try {
          Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
          con = DriverManager.getConnection(url);
          Statement stmt = con.createStatement();
          rs = stmt.executeQuery(str1);
          while (rs.next()) {
            mar[1].平均分 = rs.getDouble(1);
            mar[1].最高分 = rs.getInt(2);
            mar[1].最低分 = rs.getInt(3);

          }
          rs = stmt.executeQuery(str2);
          while (rs.next()) {
            mar[1].名次 = rs.getInt(1);
          }
        }
        catch (Exception e) {}

        break
            ;
      case 3:
        mar[2] = new mark();
        str1 = "select avg(成绩3),max(成绩3),min(成绩3) from yang1";
        str2 = "select count(成绩3) from yang1 where 成绩3>=" + std.成绩3;
        try {
          Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
          con = DriverManager.getConnection(url);
          Statement stmt = con.createStatement();
          rs = stmt.executeQuery(str1);
          while (rs.next()) {
            mar[2].平均分 = rs.getDouble(1);
            mar[2].最高分 = rs.getInt(2);
            mar[2].最低分 = rs.getInt(3);

          }
          rs = stmt.executeQuery(str2);
          while (rs.next()) {
            mar[2].名次 = rs.getInt(1);
          }
        }
        catch (Exception e) {}

        break
            ;
      case 4:
        mar[3] = new mark();
        str1 = "select avg(成绩4),max(成绩4),min(成绩4) from yang1";
        str2 = "select count(成绩4) from yang1 where 成绩4>=" + std.成绩4;
        try {
          Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
          con = DriverManager.getConnection(url);
          Statement stmt = con.createStatement();
          rs = stmt.executeQuery(str1);
          while (rs.next()) {
            mar[3].平均分 = rs.getDouble(1);
            mar[3].最高分 = rs.getInt(2);
            mar[3].最低分 = rs.getInt(3);

          }
          rs = stmt.executeQuery(str2);
          while (rs.next()) {
            mar[3].名次 = rs.getInt(1);
          }
        }
        catch (Exception e) {}

        break
            ;
      case 5:
        mar[4] = new mark();
        str1 = "select avg(成绩5),max(成绩5),min(成绩5) from yang1";
        str2 = "select count(成绩5) from yang1 where 成绩5>=" + std.成绩5;
        try {
          Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
          con = DriverManager.getConnection(url);
          Statement stmt = con.createStatement();
          rs = stmt.executeQuery(str1);
          while (rs.next()) {
            mar[4].平均分 = rs.getDouble(1);
            mar[4].最高分 = rs.getInt(2);
            mar[4].最低分 = rs.getInt(3);

          }
          rs = stmt.executeQuery(str2);
          while (rs.next()) {
            mar[4].名次 = rs.getInt(1);
          }
        }
        catch (Exception e) {}

        break
            ;

    }

  }

  private class mark {
    public int 名次, 最高分, 最低分;
    double 平均分;
    public mark() {
      名次 = 0;
      最高分 = 0;
      最低分 = 0;
      平均分 = 0;
    }
  }

}

⌨️ 快捷键说明

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