视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
基于Java的学生学籍管理系统[1]
2025-10-05 01:33:30 责编:小OO
文档

 

PINGDINGSHAN UNIVERSITY
 

专业实训(四)

项目报告

    题  目: 学生学籍管理系统        

      

     院(系):     软件学院               

      专业年级:      Java(1)班            

*    **      ***                 

学    号:      **********             

指导教师:      **                 

           2012年 5 月 26 日

1 项目简介.................................................................................2

   1.1项目的意义........................................................................2

   1.2 项目说明...........................................................................2

   1.3 关键技术...........................................................................2

2 总体设计.................................................................................2

   2.1 总体结构图..................................................................................3

   2.2  数据库的设计.............................................................................3

3 详细设计与实现.....................................................................3

   3.1登陆界面.......................................................................................4

    3.2 系统主界面.................................................................................4

    3.3 删除界面.....................................................................................4

3.4 添加界面.....................................................................................5

4 代码设计(主要)........................................................................5

4.1 登陆代码.....................................................................................6

4.2 添加代码.....................................................................................8

4.3 删除代码...................................................................................12

5 课程总结与分析..........................................................................15

    参考文献..................................................................................15

     

  

学生学籍管理系统

(一) 项目简介

  1.1项目的意义

     随着高校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。高等院校 需要一个信息管理系统来管理学生的各种信息,以提高管理的水平。

  1.2项目的说明

     学生信息管理系统平台的实现 目标包括以下几个方面:实现学生信息录入、查询、删除,管理学生档案,提高学生档案的管理水 平,效率和保密性。本文介绍的学生信息管理系统将计算机用于现代化管理,在学校 学生管理中心进行关于学生信息的处理, 完成了许多功能, 如添加信息、查询信息、删除信息等。本文通过对学生管理信息系统的分析与设计,介绍了该系统的设计思想、设计方法和开发 的步骤及成果。

  1.3 关键技术

     主要运用Java语言,用到其中的swing、awt图形界面和数据库SQL2000 sqlserver等技术      

(二) 总体设计

   2.1 总体结构图

图3-1 总体结构图

   2.2 数据库设计

本系统需要用到学生表格,建立一个source数据库,如图3-2所示

                       图3-2

(三)详细设计与实现  

由数据库编程可知,应该先设计一个数据库来存放相关表格数据,并且通过   java 的数据库编程 知识来实现对学生信息的管理。

   3.1 用户登陆界面

        用户可以选择管理员和学生不同的身份登录 如图4-1所示

          

                      图4-1 登陆界面

   3.2系统主界面

     此界面包含了一个菜单条,两个菜单项——设置、选项。其中选项包含添加与查看,设置包含注销登录与退出。如图4-2所示。

 

3.3 查看界面

   在这个界面可以实现对学生的信息的升序查询,按专业查询,并且可以实现对指定的学生删除 如图4-4

    

                              图4-4

3.4添加用户界面

    包括添加管理员与学生,添加各自的对应信息如图4-5-1、4-5-2所示

    

                    图 4-5-1

    

                         图4-5-2

(四)代码设计

   4.1 登陆代码

管理员登陆:

   public void actionPerformed(ActionEvent e) 

    {

        if(e.getSource()==b1)

        {

            Connection con;

            Statement sql;

            ResultSet rs;

            String pw="";

            String txt1=t1.getText();

            String txt2=t2.getText();

               try{

                    Class.forName("source.jdbc.odbc.JdbcOdbcDriver");

                   }

               catch(ClassNotFoundException ee)

                     {System.out.println(ee);}

           if(c1.getSelectedItem().equals("管理员"))

             {

               try{

                    con=DriverManager.getConnection("jdbc:odbc:source");

                    sql=con.createStatement();

                    rs=sql.executeQuery("SELECT * from Admin");

                    while(rs.next())

                     {               

                       String name=rs.getString("name");                      

                       String password=rs.getString("password");                     

                       if(txt1.length()==0)

                       {

                           JOptionPane.showMessageDialog(this,"请输入账号","警告",JOptionPane.WARNING_MESSAGE);break;                       

                        }

                       else if(txt2.length()==0)

                       {

                           JOptionPane.showMessageDialog(this,"请输入密码","警告",JOptionPane.WARNING_MESSAGE);break;

                       }

                           

                       else if(txt1.length()!=0&&txt2.length()!=0)

                       {

                           if(txt1.equals(name)&&txt2.equals(password))

                           {

                             mw=new mainWindow("学生管理系统");

                             mw.showWindow();

                             this.setVisible(false);break;

                      }}}

                    con.close();

                    }

                catch(SQLException e1)

                {System.out.println(e1);}

              }

学生登录

        else if(c1.getSelectedItem().equals("学生"))

 {

        while(rs.next())

       {                       

         String name=rs.getString("name");                       

         String num=rs.getString("num");                       

         if(txt1.length()==0)

             {

             JOptionPane.showMessageDialog(this,"请输入账号","警告",JOptionPane.WARNING_MESSAGE);break;                       

                        }

        else if(txt2.length()==0)

                {

                  JOptionPane.showMessageDialog(this,"请输入密码","警告",JOptionPane.WARNING_MESSAGE);break;

                       }

                           

        else if(txt1.length()!=0&&txt2.length()!=0)

               {

                  if(txt1.equals(name)&&txt2.equals(num))

                    {

                      mw1=new mainWindow1("学生管理系统");

                      mw1.showWindow();

                     this.setVisible(false);break;

                           }

                       }

4.2 添加用户的代码

  public void actionPerformed(ActionEvent e) 

    {

        if(e.getSource()==b1)

        {

            Connection con;

            Statement sql;

            ResultSet rs;

            String txt1=t1.getText();

            String txt2=pf2.getText();

            if(txt1!=null&&txt2!=null)

            {    

 try{

                       con=DriverManager.getConnection("jdbc:odbc:source");

sql=con.createStatement();

                 sql.executeUpdate("insert into admin values('"+txt1+"','"+txt2+"')");

con.close();

            JOptionPane.showMessageDialog(this,"成功添加管理员"+t1.getText(),"添加成功",JOptionPane.WARNING_MESSAGE);

                 closeInsertWindow();

                }

             catch(Exception e1)

             {

                System.out.println(e1);

             }

            }

            else if(txt1==null||txt2==null)

            {

                JOptionPane.showMessageDialog(this,"请将资料填写清楚","警告",JOptionPane.WARNING_MESSAGE);

            }

        }

        else if(e.getSource()==load)

        {

            String num=numField.getText();

            String name=nameField.getText();

            String subject1=(String)subject.getSelectedItem();

            String grade=gradeField.getText();

            String birthday=birthField.getText();

            String choice;

            if(male.isSelected())

            {

                choice=male.getText();

            }

            else

            {

                choice=female.getText();

            }

            

            Connection con;

            Statement sql;

            ResultSet rs;

            try

            {   

                con=DriverManager.getConnection("jdbc:odbc:source");

                sql=con.createStatement();

                rs=sql.executeQuery("select * from student");

                while(rs.next())

                {

                    String num1=rs.getString("num");

                    if(num.equals(num1))

                    {

                     JOptionPane.showMessageDialog(this,"学号已存在","警告",JOptionPane.WARNING_MESSAGE);

                    }

                }

                if(num!=null&&name!=null&&subject1!=null&choice!=null&&grade!=null&&birthday!=null)

                {

                    sql.executeUpdate("insert into student values('"+name+"','"+num+"','"+choice+"','"+subject1+"','"+grade+"','"+birthday+"')");

        

                }

             rs.close();

             sql.close();

             con.close();

             closeInsertWindow();

            }

            catch(Exception e2)

            {

                System.out.println(e2);

            }

        }

        

    }

    

    public void focusGained(FocusEvent e) {

        if(e.getSource()==t1)

        {

            l4.setText("");

        }

        

    }

    public void focusLost(FocusEvent e) 

    {

        if((JTextField)e.getSource()==t1)

        {

            int flag=0;

            Connection con;

            Statement sql;

            ResultSet rs;

            String txt1=t1.getText();

               try{

                    Class.forName("source.jdbc.odbc.JdbcOdbcDriver");

                   }

               catch(ClassNotFoundException ee)

                     {System.out.println(ee);}

               try{

                    con=DriverManager.getConnection("jdbc:odbc:source");

                    sql=con.createStatement();

                    rs=sql.executeQuery("SELECT * from Admin");

                    while(rs.next())

                    {

                        String name=rs.getString("name");

                        if(txt1.equals(name))

                        {

                            flag=1;    

                        }

                    }

                    if(flag==1)

                    {l4.setText("账号已存在");t1.setText("");}

                    else

                    {l4.setText("可创建用户");}

                    con.close();

                  }

               catch(SQLException e1)

                    {System.out.println(e1);}

        }

        else if(e.getSource()==pf2)

        {

            String txt2=pf1.getText();

            String txt3=pf2.getText();

            if(!txt3.equals(txt2))

            {

                l5.setText("两次密码不一致");

            }

            else if(txt3.equals(txt2))

            {

                l5.setText("");

            }}    }}

4.3查看与删除的主要代码

  查看的代码

   public void actionPerformed(ActionEvent e) 

    {

        if(e.getSource()==b1)

        {

          if(cb1.isSelected())

          {

              int i=0;

              Connection con;

              Statement sql;

              ResultSet rs;

              try{

                    Class.forName("source.jdbc.odbc.JdbcOdbcDriver");

                   }

              catch(ClassNotFoundException ee)

                     {System.out.println(ee);}

            try{

                init();//初始化表格

                con=DriverManager.getConnection("jdbc:odbc:source");

                sql=con.createStatement();

                rs=sql.executeQuery("select * from student order by num");

                while(rs.next())

                {

                  String num=rs.getString(1);

                  String name=rs.getString(2);

                  String sex=rs.getString(3);

                  String subject=rs.getString(4);

                  String grade=rs.getString(5);

                  String birthday=rs.getString(6);

                  data[i][0]=num;

                  data[i][1]=name;

                  data[i][2]=sex;

                  data[i][3]=subject;

                  data[i][4]=grade;

                  data[i][5]=birthday;

                  i++;

                }

                rs.close();

                sql.close();

                con.close();

                table.repaint();

               }

            catch(Exception e1)

            {e1.printStackTrace();}

          }

          

          else

          {

              int i=0;

              Connection con;

              Statement sql;

              ResultSet rs;

              try{

                    Class.forName("source.jdbc.odbc.JdbcOdbcDriver");

                   }

              catch(ClassNotFoundException ee)

                     {System.out.println(ee);}

              try{

                   

                   con=DriverManager.getConnection("jdbc:odbc:source");

                   sql=con.createStatement();

                   if(jcb.getSelectedItem()=="数学")

                   {

                      init();//初始化表格

                      rs=sql.executeQuery("select * from student where subject='数学'");

                        while(rs.next())

                        {

                          String num=rs.getString(1);

                          String name=rs.getString(2);

                          String sex=rs.getString(3);

                          String subject=rs.getString(4);

                          String grade=rs.getString(5);

                          String birthday=rs.getString(6);

                          data[i][0]=num;

                          data[i][1]=name;

                          data[i][2]=sex;

                          data[i][3]=subject;

                          data[i][4]=grade;

                          data[i][5]=birthday;

                          i++;

                        }

                     }

                 

                    else if(jcb.getSelectedItem()=="文学")

                       {

                          init();//初始化表格

                          rs=sql.executeQuery("select * from student where subject='文学'");

                            while(rs.next())

                            {

                              String num=rs.getString(1);

                              String name=rs.getString(2);

                              String sex=rs.getString(3);

                              String subject=rs.getString(4);

                              String grade=rs.getString(5);

                              String birthday=rs.getString(6);

                              data[i][0]=num;

                              data[i][1]=name;

                              data[i][2]=sex;

                              data[i][3]=subject;

                              data[i][4]=grade;

                              data[i][5]=birthday;

                              i++;

                            }

                         }

                    else if(jcb.getSelectedItem()=="计算机")

                       {

                          init();//初始化表格

                          rs=sql.executeQuery("select * from student where subject='计算机'");

                            while(rs.next())

                            {

                              String num=rs.getString(1);

                              String name=rs.getString(2);

                              String sex=rs.getString(3);

                              String subject=rs.getString(4);

                              String grade=rs.getString(5);

                              String birthday=rs.getString(6);

                              data[i][0]=num;

                              data[i][1]=name;

                              data[i][2]=sex;

                              data[i][3]=subject;

                              data[i][4]=grade;

                              data[i][5]=birthday;

                              i++;

                            }

                         }

                    con.close();

                    table.repaint();

                  }

                catch(Exception e2)

                {e2.printStackTrace();}

            }

          

        }

 删除的代码

  else if(e.getSource()==b2)

        {

          int n=JOptionPane.showConfirmDialog(this,"确认删除吗?","确认对话框",JOptionPane.YES_NO_OPTION);

          if(n==JOptionPane.YES_OPTION)

          {  

            String num=(String)table.getValueAt(table.getSelectedRow(),1);

            //System.out.println(num);

            Connection con;

            Statement sql;

            ResultSet rs;

            String condition="delete from student where num='"+num+"'";

              try{

                    Class.forName("source.jdbc.odbc.JdbcOdbcDriver");

                   }

              catch(ClassNotFoundException ee)

                     {System.out.println(ee);}

              try

              {

                con=DriverManager.getConnection("jdbc:odbc:source");

                sql=con.createStatement();

                sql.executeUpdate(condition);

                table.repaint();

              }

              catch(Exception e2)

              {

                  e2.printStackTrace();

              }

          }

        }    

    }

五 课程总结与分析

在学生信息管理系统中,涵盖了学生信息管理工作的大部分功能,能够满足用户对数据查询、 添加、删除的基本需要,基于后台数据库,基本满足用户对数据的操作要求,并且尽量做到 程序设计人性化,方便用户进行操作。学生信息管理系统在设计中,由于在知识、经验方面都存在着不足,且时间也比较仓促,就简化了某些方面内容。 学生信息管理系统还有一些需在改进的地方。

参考文献

  [1]Java2 实用教程/耿祥义,张跃平编著.-3版-北京-清华大学出版社

  下载本文

显示全文
专题