您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > java课程设计-学生学籍管理系统
第1页目录一、课程设计任务及要求.................................................1二、需求分析.............................................................2三、系统功能结构........................................................3四、设计思路..............................................................4五、详细设计.............................................................5六、运行调试与分析.....................................................10七、设计体会与总结....................................................21八、参考文献.............................................................21第2页一、课设任务及要求课设任务:设计基于数据库的学籍管理系统设计要求:1管理员录入学生基本信息的功能2管理员修改学生基本信息的功能3按不同类别查询学生基本信息的功能4管理员删除学生基本信息的功能5利用不同的用户名登陆实现权限操作的功能6实现登陆用户的注册7学生个人修改自己的基本信息的功能8学生通过SQL语句查询基本信息的功能9打印10退出第3页二、需求分析在开发学生学籍管理系统之前,首先要知道所要开发的系统要实现那些功能,是针对学生的系统还是针对管理员的系统,并且要清楚不同级别的用户具有什么样的功能,实现什么样的界面。当明确了这些,项目开发的思路就清晰了,然后再对网络上别的学生学籍管理系统进行考察、分析,从中吸取经验,并结合本系统的要求以及实际的管理情况,设计出一个合理的学生学籍管理系统。本系统需要如下:系统设计界面要求整洁,美观大方,能够展现各个功能。系统首页具有banner界面,起到耳目一新的印象。设计主要是面向管理员和学生,为他们解决查询,修改,删除等操作问题。系统运行稳定,安全可靠。要求对学生基本信息进行严格管理。2.1开发环境在开发学生学籍管理系统时,该项目使用的软件开发环境如下:操作系统:WindownXP数据库:SQLServer2005开发工具:Myeclipse第4页三、系统功能结构学生学籍管理系统功能结构:学生学籍管理系统管理员学生查询基本信息询基本信息修改基本信息删除基本信息打印录入基本信息退出SQL语句查询查询个人信息注册第5页四、设计思路为了能够清晰的学习,下面给出学生学籍管理系统的系统流程图:第6页五、详细设计本系统主要是按不同的功能而设计的类,每个类都实现不同的功能,也存在着不同类之间的调用,不要调用如下:if(e.getSource()==query){Findfind=newFind();find.setVisible(true);this.setVisible(false);}if(e.getSource()==exit){System.exit(0);}if(e.getSource()==insert){Insertinsert=newInsert();insert.setVisible(true);this.setVisible(false);}if(e.getSource()==insertcource){Insertcourceinsertcource=newInsertcource();insertcource.setVisible(true);this.setVisible(false);}if(e.getSource()==delete){Deletedelete=newDelete();delete.setVisible(true);this.setVisible(false);}if(e.getSource()==deletecource){Deletecourcedeletecource=newDeletecource();deletecource.setVisible(true);this.setVisible(false);}if(e.getSource()==update){Updateupdate=newUpdate();update.setVisible(true);this.setVisible(false);}第7页if(e.getSource()==print){p=getToolkit().getPrintJob(this,OK,null);g=p.getGraphics();g.translate(120,200);jt.paintAll(g);g.dispose();p.end();}if(e.getSource()==hp){JOptionPane.showMessageDialog(this,月上飞鸢制作,谢谢!,帮助,JOptionPane.PLAIN_MESSAGE);}}数据库的连接主要是通过JDBC来连接的,如下所示:Stringsql=select*fromStudent;try{Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);Connectioncon=DriverManager.getConnection(jdbc:odbc:selection);Statementstmt=con.createStatement();ResultSetrs=stmt.executeQuery(sql);ResultSetMetaDatarsmd=rs.getMetaData();intnumberOfColumns=rsmd.getColumnCount();while(rs.next()){VectornewRow=newVector();intn=1;while(n=numberOfColumns){newRow.addElement(rs.getString(n));n++;}model.addRow(newRow);}rs.close();stmt.close();第8页}catch(Exceptione){e.printStackTrace();}查询学生基本信息功能的代码如下:publicclassFindextendsJFrameimplementsActionListener{privateJLabeljl;privateJTextFieldjtf;privateJButtonjb1;privateDefaultTableModelmodel;privateJTablejt;privateJComboBoxjcb;privateString[]columnNames={学号,姓名,性别,专业,年级,年龄,宿舍,电话};privateintrow;privateString[]boxstr={学号,姓名,性别,专业,年级,年龄,宿舍};Adminmainparents1=newAdminmain();publicFind(){super(查询学生信息);this.setSize(460,400);this.setLocation(350,250);Containerc=this.getContentPane();c.setLayout(newFlowLayout());jl=newJLabel(请输入关键词及选择类型);this.add(jl);jtf=newJTextField(15);this.add(jtf);jcb=newJComboBox(boxstr);this.add(jcb);jb1=newJButton(查询);jb1.addActionListener(this);this.add(jb1);model=newDefaultTableModel(columnNames,row);jt=newJTable(model);第9页this.add(jt);JScrollPanetablePane=newJScrollPane(jt);c.add(tablePane);jt.setEnabled(false);this.setVisible(true);parents1.setVisible(false);this.setResizable(false);this.addWindowListener(newWindowAdapter(){publicvoidwindowClosing(WindowEventevent){shutdown();}});publicstaticvoidmain(String[]args){newFind();}publicvoidshutdown(){parents1.setVisible(true);this.dispose();}publicvoidactionPerformed(ActionEventarg0){Stringsql=select*fromStudentwhere+jcb.getSelectedItem()+='+jtf.getText()+';try{Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);}catch(ClassNotFoundExceptionce){System.out.println(SOLException:+ce.getMessage());}try{Connectioncon=DriverManager.getConnection(jdbc:odbc:selection);Statementstmt=con.createStatement();ResultSetrs=stmt.executeQuery(sql);ResultSetMetaDatarsmd=rs.getMetaData();intnumberOfColumns=rsmd.getColumnCount();第10页while(rs.next()){VectornewRow=newVector();intc=1;while(c=numberOfColumns){newRow.addElement(rs.getString(c));c++;}model.addRow(newRow);}this.repaint();jtf.setText();rs.close();stmt.close();}catch(SQLExceptione){System.out.println(SQLException:+e.getMessage());}}}其他的各个不同功能的实现这就不一一列举,基本上原理都是差不多的。只是SQL语句不同罢了。第11页六、运行调试与分析讨论首先进入登陆窗口,用用户名为admin,密码为admin登陆进入管理员页面如下:从菜单栏中选择查询学生信息,进入查询页面,你可以从下拉选项中选择查询类别,然后点击查询,如下所示:第12页从菜单栏中选择修改学生信息,进入修改页面,首先根据你修改的学号而进入此学生的详细信息页面中,你可以直接修改此人的信息,然后点击确定,修改后的信息制动保存在数据库中,如下所示:第13页从菜单栏中选择删除学生信息,进入删除页面,从下拉选项中你按什么类型删除学生,输入正确则返回删除成功!如下所示:从菜单栏中选择添加学生信息,进入添加页面,按着要求认真填写学生信息,如果填写错误将会返回错误提示,之后按下添加,则自动添加到数据库中去,如下所示:第14页从菜单栏中选择打印学生信息,进入打印页面,如下所示:在登陆窗口中单击注册,进入注册页面,在这里注册你登陆的用户名和密码,但是用户名必须是学号,而且在学
本文标题:java课程设计-学生学籍管理系统
链接地址:https://www.777doc.com/doc-5586350 .html