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

📄 managesystem.java

📁 用java实现简单的:简单聊天程序 多线程 计数器 记事本 马鞍点 扇子 学生成绩管理系统 异常处理 字符串类
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import java.sql.*;
 //int flag=0;
class DBManage
{  
   public DBManage()
   {
   }  
   //执行查询语句,返回查询结果集   
   public ResultSet query(String sql)
   {  
      try
         {  
           Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");    //加载驱动程序
         }
      catch(java.lang.ClassNotFoundException e)
        {
           System.out.println("异常!!!!");
        } 
      try{       
           Connection con=DriverManager.getConnection("jdbc:odbc:test");   //连接数据库
           Statement s=con.createStatement();     //建立Statemnet类对象
           ResultSet rs=s.executeQuery(sql);      //执行SQL语句t          
           return rs;      //返回结果集
         }
      catch(SQLException e)
         {
             System.out.println("SQLException:"+e.getMessage()); 
             return null;
         }

   }
   //执行添加、删除和修改语句
   public boolean executeSQL(String sql)
   {
      try
         {  
           Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
         }
      catch(java.lang.ClassNotFoundException e)
        {
           System.out.println("异常!!!!");
        }
      try{               
           Connection con=DriverManager.getConnection("jdbc:odbc:test");   //连接数据库
           Statement s=con.createStatement();     //建立Statemnet类对象
           s.executeUpdate(sql);     //执行SQL语句
           con.commit();        //提交到数据库
           s.close();
           con.close();
           return true;  
         }
      catch(Exception e)
        {   
            System.out.println("SQLException:"+e.getMessage());
            return false;
        }       
   }

}


class update1 implements ActionListener//修改学生信息
{   
    DBManage db=new DBManage();     //定义数据库操作对象
    ResultSet rs;                  //定义结果集
    String sql;  
    JFrame f=new JFrame("修改学生基本信息");
    Container cp=f.getContentPane();
    //创建面板对象
    JPanel pa1=new JPanel(new FlowLayout());       
    JPanel pa2=new JPanel(new GridLayout(6,2,5,5));
    JPanel pa3=new JPanel(new FlowLayout());
    //创建标签对象
    JLabel lb1=new JLabel("输入学号或姓名点击确定,将调出学生的成绩信息!");
    JLabel lb2=new JLabel("学号");
    JLabel lb3=new JLabel("姓名");
    JLabel lb4=new JLabel("性别");
    JLabel lb5=new JLabel("籍贯");
    JLabel lb6=new JLabel("出生年月"); 
    JLabel lb7=new JLabel("所在学院");

    //创建文本框对象
    JTextField TNum=new JTextField(10);
    JTextField TName=new JTextField(10);
    JTextField TChinese=new JTextField(10);
    JTextField TMath=new JTextField(10); 
    JTextField TEnglish=new JTextField(10);
    JTextField TTotal=new JTextField(10); 
         
    //创建按钮对象
    JButton BOK=new JButton("确定");
    JButton BSave=new JButton("保存");
    JButton BReset=new JButton("清空");
    JButton BQuit=new JButton("退出"); 

    public update1()
    { 
      cp.setLayout(new BorderLayout());
      //将面板添加到容器中
      cp.add(pa1,BorderLayout.NORTH);
      cp.add(pa2,BorderLayout.CENTER);
      cp.add(pa3,BorderLayout.SOUTH);

      //添加标签lb1到面板pa1中
      pa1.add(lb1);
      //添加标签和文本框到面板pa2中
      pa2.add(lb2); pa2.add(TNum);
      pa2.add(lb3); pa2.add(TName);
      pa2.add(lb4); pa2.add(TChinese);
      pa2.add(lb5); pa2.add(TMath);
      pa2.add(lb6); pa2.add(TEnglish);
      pa2.add(lb7); pa2.add(TTotal);  
      //添加按钮到面板pa3中
      pa3.add(BOK); 
      pa3.add(BSave);
      pa3.add(BReset);
      pa3.add(BQuit);

      //注册按钮监听者对象
      BOK.addActionListener(this);
      BSave.addActionListener(this);
      BReset.addActionListener(this);
      BQuit.addActionListener(this); 

      f.pack();
      f.setVisible(true);
      f.setSize(350,300);
      //f.setBackground(Color.cyan);   //设置背景颜色
      f.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
      
      //初始化时设置文本框的编辑属性
      setAbled(true,false,false);
      
      //初始化时设置按钮的可用性
      setButton(true,false,false,true);
   }
   //设置文本框是否可编辑,该函数有两个参数,为布尔型变量,若为true,则设置文本框可编辑,若为false,则不可编辑
   void setAbled(boolean b,boolean name,boolean bn)
   {
      TNum.setEditable(b);
      TName.setEditable(name);
      TChinese.setEditable(bn);
      TMath.setEditable(bn);
      TEnglish.setEditable(bn);
      TTotal.setEditable(bn);
   }
   //设置按钮的状态,有四个布尔型变量,设置对应的按钮是否可用
   void setButton(boolean ok,boolean save,boolean reset,boolean quit)
   {
      BOK.setEnabled(ok);
      BSave.setEnabled(save);
      BReset.setEnabled(reset);
      BQuit.setEnabled(quit);
   }
   //将文本框清空
    void setNull()
    {
       TChinese.setText(null);  
       TMath.setText(null);    
       TEnglish.setText(null);    
       TTotal.setText(null);
    }
   public void actionPerformed(ActionEvent e)
   {  
      if(e.getSource()==BOK)
      {  
         //如果学号为空
         if(TNum.getText().trim().equals(""))
         {
            JOptionPane.showMessageDialog(f,"请输入学号!");
            return;
         }
         //如果学号不为空
         else   
             sql="select * from student where 学号='" +TNum.getText().trim()+ "' ";
             try{  
                  rs=db.query(sql);   //执行数据库的查询
                  if(rs.next())
                  {  
                     TNum.setText(rs.getString("学号"));
                     TName.setText(rs.getString("姓名"));
                     TChinese.setText(rs.getString("性别"));
                     TMath.setText(rs.getString("籍贯"));
                     TEnglish.setText(rs.getString("出生年月"));
                     TTotal.setText(rs.getString("所在学院"));
                  }
                  else{
                        JOptionPane.showMessageDialog(f,"该学号不存在!");
                        return;
                      }
                }
             catch(SQLException ce)
                {  System.out.println("SQLException异常:"+ce.getMessage());  }

             setAbled(false,false,true);        //设置TNum和TName文本框不可编辑
             setButton(false,true,true,true);     //设置确定按钮不可用
      }
      if(e.getSource()==BSave)
      {  
          sql=" update student set 性别='" +TChinese.getText().trim()+ "',";
          sql=sql+ "籍贯='" +TMath.getText().trim()+ "',";
          sql=sql+ "出生年月='" +TEnglish.getText().trim()+ "',";
          sql=sql+ "所在学院='" +TTotal.getText().trim()+ "'";
          sql=sql+ "where 学号='" +TNum.getText().trim()+ "' or 姓名='" +TName.getText().trim()+ "' ";        
          if(db.executeSQL(sql))
            {  JOptionPane.showMessageDialog(f,"修改成功!");  }
          else
            {  JOptionPane.showMessageDialog(f,"修改失败,请重新操作!");  } 
          setNull();
          setAbled(true,false,false);
          setButton(true,false,false,true);
      }
      if(e.getSource()==BReset)
      {
          setNull();
      }
      if(e.getSource()==BQuit)
      {
          f.dispose();
      }
   }  
      
}         

class update implements ActionListener
{   
    DBManage db=new DBManage();     //定义数据库操作对象
    ResultSet rs;                  //定义结果集
    String sql;  
    JFrame f=new JFrame("修改成绩");
    Container cp=f.getContentPane();
    //创建面板对象
    JPanel pa1=new JPanel(new FlowLayout());       
    JPanel pa2=new JPanel(new GridLayout(6,2,5,5));
    JPanel pa3=new JPanel(new FlowLayout());
    //创建标签对象
    JLabel lb1=new JLabel("输入学号或姓名点击确定,将调出学生的成绩信息!");
    JLabel lb2=new JLabel("学号");
    JLabel lb3=new JLabel("姓名");
    JLabel lb4=new JLabel("语文");
    JLabel lb5=new JLabel("数学");
    JLabel lb6=new JLabel("英语"); 
    JLabel lb7=new JLabel("总分");

    //创建文本框对象
    JTextField TNum=new JTextField(10);
    JTextField TName=new JTextField(10);
    JTextField TChinese=new JTextField(10);
    JTextField TMath=new JTextField(10); 
    JTextField TEnglish=new JTextField(10);
    JTextField TTotal=new JTextField(10); 
         
    //创建按钮对象
    JButton BOK=new JButton("确定");
    JButton BSave=new JButton("保存");
    JButton BReset=new JButton("清空");
    JButton BQuit=new JButton("退出"); 

    public update()
    { 
      cp.setLayout(new BorderLayout());
      //将面板添加到容器中
      cp.add(pa1,BorderLayout.NORTH);
      cp.add(pa2,BorderLayout.CENTER);
      cp.add(pa3,BorderLayout.SOUTH);

      //添加标签lb1到面板pa1中
      pa1.add(lb1);
      //添加标签和文本框到面板pa2中
      pa2.add(lb2); pa2.add(TNum);
      pa2.add(lb3); pa2.add(TName);
      pa2.add(lb4); pa2.add(TChinese);
      pa2.add(lb5); pa2.add(TMath);
      pa2.add(lb6); pa2.add(TEnglish);
      pa2.add(lb7); pa2.add(TTotal);  
      //添加按钮到面板pa3中
      pa3.add(BOK); 
      pa3.add(BSave);
      pa3.add(BReset);
      pa3.add(BQuit);

      //注册按钮监听者对象
      BOK.addActionListener(this);
      BSave.addActionListener(this);
      BReset.addActionListener(this);
      BQuit.addActionListener(this); 

      f.pack();
      f.setVisible(true);
      f.setSize(350,300);
      //f.setBackground(Color.cyan);   //设置背景颜色
      f.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
      
      //初始化时设置文本框的编辑属性
      setAbled(true,false,false);
      
      //初始化时设置按钮的可用性
      setButton(true,false,false,true);
   }
   //设置文本框是否可编辑,该函数有两个参数,为布尔型变量,若为true,则设置文本框可编辑,若为false,则不可编辑
   void setAbled(boolean b,boolean name,boolean bn)
   {
      TNum.setEditable(b);
      TName.setEditable(name);
      TChinese.setEditable(bn);
      TMath.setEditable(bn);
      TEnglish.setEditable(bn);
      TTotal.setEditable(bn);
   }
   //设置按钮的状态,有四个布尔型变量,设置对应的按钮是否可用
   void setButton(boolean ok,boolean save,boolean reset,boolean quit)
   {
      BOK.setEnabled(ok);
      BSave.setEnabled(save);
      BReset.setEnabled(reset);
      BQuit.setEnabled(quit);
   }
   //将文本框清空
    void setNull()
    {
       TChinese.setText(null);  
       TMath.setText(null);    
       TEnglish.setText(null);    
       TTotal.setText(null);
    }
   public void actionPerformed(ActionEvent e)
   {  
      if(e.getSource()==BOK)
      {  
         //如果学号为空
         if(TNum.getText().trim().equals(""))
         {
            JOptionPane.showMessageDialog(f,"请输入学号!");
            return;
         }
         //如果学号不为空
         else   
             sql="select * from grade where 学号='" +TNum.getText().trim()+ "' ";
             try{  
                  rs=db.query(sql);   //执行数据库的查询
                  if(rs.next())
                  {  
                     TNum.setText(rs.getString("学号"));
                     TName.setText(rs.getString("姓名"));
                     TChinese.setText(rs.getString("语文"));
                     TMath.setText(rs.getString("数学"));
                     TEnglish.setText(rs.getString("英语"));
                     TTotal.setText(rs.getString("总分"));
                  }
                  else{
                        JOptionPane.showMessageDialog(f,"该学号不存在!");
                        return;
                      }
                }

⌨️ 快捷键说明

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