基于bs架构的大学生成绩管理系统设计与实现

基于bs架构的大学生成绩管理系统设计与实现

ID:8322251

大小:169.00 KB

页数:35页

时间:2018-03-19

上传者:U-5649
基于bs架构的大学生成绩管理系统设计与实现_第1页
基于bs架构的大学生成绩管理系统设计与实现_第2页
基于bs架构的大学生成绩管理系统设计与实现_第3页
基于bs架构的大学生成绩管理系统设计与实现_第4页
基于bs架构的大学生成绩管理系统设计与实现_第5页
资源描述:

《基于bs架构的大学生成绩管理系统设计与实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

青岛科技大学本科毕业设计(论文)青岛科技大学本科毕业设计(论文)基于B/S架构的大学生成绩管理系统设计与实现题目____________________________________________________________________指导教师__________________________辅导教师__________________________学生姓名__________________________学生学号__________________________121自动化自动化与电子工程学院______________________________学院____________________________专业________________班2016526______年___月___日5 青岛科技大学本科毕业设计(论文)基于B/S架构的大学生成绩管理系统设计与实现摘要针对大学生成绩信息管理工作,经仔细分析之后本文设计并实现了大学生成绩管理系统。本系统在功能上主要分学生端和管理员端,分别可以完成对应用户所需的功能;在技术上,本系统是采用B/S架构基于java语言开发的,数据库采用oracle11g,web服务器采用tomcat服务器。采用计算机对大学生成绩进行管理,能进一步提高高校办学效益和现代化水平,帮助教师提高工作效率,实现学生成绩维护工作流程中的系统化、规范化和高效化。关键词:学生成绩管理;B/S架构;java;oracle数据库5 青岛科技大学本科毕业设计(论文)BASEDONB/SARCHITECTURESTUDENTACHIEVEMENTMANAGEMENTSYSTEMDESIGNANDIMPLEMENTATIONABSTRACTStudents'gradesforinformationmanagement,aftercarefulanalysisofcollegestudentsdesignedandimplementedaperformancemanagementsystem.Thissystemisfunctionallydividedstudentsandadministratorsendside,respectively,correspondingtotheusercancompletetherequiredfunctions;Technically,thesystemistheuseofB/Sarchitectureisbasedonjavalanguagedevelopment,databaseusingoracle11g,webserverusestomcatserver.Studentsusecomputersforperformancemanagement,tofurtherimprovethelevelofefficiencyandmodernizationoftheHigherEducationtohelpteachersimproveworkefficiency,maintenanceworkflowstudentachievementinthesystematic,standardizedandefficient.KEYWORDS:studentachievementmanagement;B/Sarchitecture;java;Oracledatebase5 青岛科技大学本科毕业设计(论文)目录第一章绪论61.1研究背景6第二章系统开发相关技术介绍72.1系统架构72.1.1B/S架构和C/S架构介绍72.1.2本系统架构72.2java语言72.2.1java简介72.3Oracle数据库82.3.1Oracle简介82.3.2Oracle数据库体系结构概述82.4本章小结8第三章系统需求分析93.1用户权限分析93.2系统功能分析93.3系统数据分析10第四章系统设计114.1系统技术架构设计114.2数据库设计114.2.1项目E-R图114.2.2数据库表的设计125 青岛科技大学本科毕业设计(论文)4.3底层接口设计124.3本章小结13第五章详细设计和实现145.1登录模块145.1.1功能分析145.1.2代码实现145.2学生端主页模块175.3管理端主页模块185.3.1学生信息列表185.3.2学生信息删除功能235.4学生信息查询模块245.4.1业务逻辑介绍245.4.2代码实现245.5新增学生模块285.5.1业务逻辑285.5.2代码实现285.6回收站模块305.7本章小结30第六章系统测试306.1测试环境306.2测试工作316.3本章小结335 青岛科技大学本科毕业设计(论文)第一章绪论1.1研究背景随着计算机科学的发展,利用计算机来实现数据的管理已经越来越成为一种趋势。当需要管理的数据量较大时,可以通过根据自身特点设计并开发一个对应的信息管理系统来完成既定的功能。相较于传统的信息管理,计算机信息管理系统具有存储量大、查询迅速、可靠性高、成本低和使用方便等优点。现在的大学生成绩信息管理就可通过计算机来实现。开发一个大学生成绩管理系统对于教务人员和学生有着很大的意义,可以帮助相应人员从繁重的信息管理工作中解放出来。1.2研究目标通过对学校教务系统成绩管理的研究,开发一个与学校教务成绩管理特点想适应的学生成绩管理系统。本系统设计的主要目标如下:Ø能满足成绩管理的功能需求。Ø有一定的人性化设计,方便用户使用。Ø操作快捷,提高办公效率。Ø有一定的安全机制,防止恶意篡改数据。35 青岛科技大学本科毕业设计(论文)第二章系统开发相关技术介绍本系统的开发涉及到的语言和技术有:B/S框架技术、软件开发语言java、数据库技术(oracle)等。2.1系统架构2.1.1B/S架构和C/S架构介绍C/S全称Client/Server。客户机需安装相应的客户端才可使用。C/S架构通过把任务合理分配到客户端和服务器端,来降低服务器端资源开销。但是C/S架构在系统更新时从服务器到客户机都需要更新,代价较大。B/S全称Browser/Server。相较于C/S架构,B/S架构不需客户机安装客户端,只需安装浏览器即可,例如360浏览器、火狐浏览器等。浏览器通过WebServer同数据库进行数据交互。B/S架构在系统进行更新时,只需更新服务器即可,但是本架构相较于C/S架构对服务器要求比较高。2.1.2本系统架构本系统用户定位于高校师生,是一个小型系统,普通的PC机即可担任客户机。同时考虑到采用B/S架构用户不需客户端以及维护方便的优势,最终采用B/S架构。2.2java语言2.2.1java简介Java语言是一种面向对象的语言,继承了c++语言面向对象的核心,同时去除了c++中难懂的指针、多重继承(以接口代替)、运算符重载等特性。Java语言真正实现了“一次编译,到处执行”的特性。35 青岛科技大学本科毕业设计(论文)2.3Oracle数据库2.3.1Oracle简介Oracle是殷墟出土的甲骨文(oracleboneinscriptions)的英文翻译的第一个单词。Oracle公司是全球最大的信息管理软件及服务供应商,成立于1977年,总部位于美国加州Redwoodshore。Oracle公司因其复杂的关系数据库产品而闻名。Oracle的关系数据库是世界第一个支持SQL语言的数据库2.3.2Oracle数据库体系结构概述平常所说的Oracle或Oracle数据库指的是Oracle数据库管理系统。Oracle数据库管理系统是管理数据库访问的计算机软件(Oracledatabasemanagersystem).它由Oracle数据库和Oracle实例(instance)构成。Oracle数据库:一个相关的操作系统文件(即存储在计算机硬盘上的文件)集合,这些文件组织在一起,成为一个逻辑整体,即为Oracle数据库。Oracle用它来存储和管理相关的信息。Oracle数据库必须要与内存里的实例合作,才能对外提供数据管理服务。Oracle实例:位于物理内存里的数据结构,它由操作系统的多个后台进程和一个共享的内存池所组成,共享的内存池可以被所有进程访问。Oracle用它们来管理数据库访问。用户如果要存取数据库(也就是硬盘上的文件)里的数据,必须通过Oracle实例才能实现,不能直接读取硬盘上的文件。实际上,Oracle实例就是平常所说的数据库服务(service)。区别:实例可以操作数据库;在任何时刻一个实例只能与一个数据库关联,访问一个数据库;而同一个数据库可由多个实例访问(RAC)。类似java里的类和对象,一个对象只属于一个类,类可以有多个对象。表空间(Tablespace):oracle数据库是通过表空间来存储表的,一个数据库实例可以有n个表空间,一个表空间下有n个表。用户(user):oracle数据库建好后,要想在库里建表,必须先为库创建用户,并为用户指定表空间,不指定的话默认为users表空间。表(Table):有了数据库、表空间和用户就可以创建表,是由行和列组成的二维数据结构,用来存储行记录。数据(Data):表中的行记录。2.4本章小结本章主要对系统所用的开发工具做了简单介绍。35 青岛科技大学本科毕业设计(论文)第三章系统需求分析系统在开发之前,需要和用户进行沟通了解用户所需的具体功能。需求分析不是一个简单的阶段,它是贯穿于整个系统开发过程中的。做好需求分析是系统开发的必备工作。本系统分析主要从需求分析、权限分析、功能分析以及数据分析入手。3.1用户权限分析随着学校招生人数的增长,随之而来的就是大量的学生信息管理问题,本论文针对的便是学生成绩信息管理。成绩管理主要涉及两方面用户的操作:学生和管理员(老师)。学生在成绩管理上的权限仅限于用户注册、个人信息查询;管理员在成绩管理上的权限有:所有学生用户的查询、增加、删除、编辑,所有学生用户成绩信息的查询、增加、删除。图3-1用户权限示例Fig.3-1Userpermissionsexample3.2系统功能分析在对学生和教师所需功能进行分析之后,本系统分别对学生子系统和管理员子系统做了如下功能设计。学生端功能如下:1、登录功能能够实现一个登录页面,提交后在后台判断用户名密码的正确性。后台处理使用Servlet实现。(1)输入的用户名和密码是通过和数据库中信息进行比对,比对成功判断登录成功,跳转到登录成功页面,并在页面上判断用户是否已经登录,如果是已经登录状态,则显示登录用户名及登录时间。(2)输入的用户名和密码是通过和数据库中信息进行比对,比对失败判断登录失败,此时,跳回登录页面,并在登录页面上提示用户:“用户或密码错误,请重新登录”。2、注册功能通过在注册页面输入自己信息,提交后通过验证可完成学生注册。3、显示信息功能登录成功后可以看到自己详细信息。管理端功能如下:1、登录功能(同学生端)2、信息列表功能(1)按照学号从小到大显示全部学生的列表(2)学生列表进行分页显示。(3)在列表的“姓名”列增加链接,点击链接,可以查看对应学生的详细信息。3、各科成绩范围查询功能35 青岛科技大学本科毕业设计(论文)在学生列表页面的“各科”下拉框中选中某课,后面输入框中输入成绩范围,点击“查询”按钮,在学生列表页面中显示查询结果。3、学生详细信息功能在学生列表中,点击“姓名”列的链接,显示该学生的详细信息。4、新增学生功能在学生列表页面,点击“新增”按钮,跳转到新增学生页面,在页面上输入学生的信息点击“提交”按钮,将信息提交至数据库。5、删除学生功能在学生列表中,选中想删除的学生记录前面的复选框,点击“删除”按钮,删除选中的学生信息。页面跳转至学生列表页面,并且被删除的学生记录不再被显示。6、回收站功能显示被删除的学生列表,在回收站页面提供删除撤销和彻底删除等功能。3.3系统数据分析本系统在开发中会使用到学生相关信息包括:学号、姓名、性别、出生日期、手机号、班级号、各科成绩。其中学号会作为学生在数据库中的主键使用,作为唯一标识。图3-2系统流程Fig.3-2SystemFlow35 青岛科技大学本科毕业设计(论文)第四章系统设计本章主要设计了系统技术架构设计、数据库设计和底层接口设计。如果把系统比喻一颗树的话,本章的工作就是设计树干。好的系统设计可以大大减少之后的代码实现部分工作量。4.1系统技术架构设计本系统采用当前主流的B/S作为系统架构,此模块中的业务层被划分为:客户层、表示层、业务逻辑层以及数据层。数据层:为系统的最底层,存储了系统所需的数据。系统所做的操作最终都会反映到数据库中。业务逻辑层:该层内为系统的核心代码,负责根据用户不同的指令完成对数据库对应的操作。表示层:该层为web服务器,负责在客户层和业务逻辑层之间传输数据。客户层:该层为用户的web浏览器,表示为网页。用户可以在对应的网页上进行操作,最终会反应到数据库中。图4-1系统总体架构图Fig.4-1SystemArchitecture4.2数据库设计通过分析,可以抽取出管理员用户和学生用户两个实体类,即对应管理员用户表和学生用户表,用来管理用户信息。4.2.1项目E-R图图4-2学生实体E-R图Fig.4-2StudententityE-Rdiagram图4-3管理员用户实体E-R图Fig.4-3AdministratorsentityE-Rdiagram图4-4实体间关系图Fig.4-4InterEntityRelationshipDiagram35 青岛科技大学本科毕业设计(论文)4.2.2数据库表的设计数据库表设计的科学与否直接关系到项目开发的顺利与否。合理的数据库表格设计能会使项目代码实现容易、简洁,而不合理的数据库表格设计给程序员带来的工作量会大很多,且会造成代码的冗余。本系统的数据库设计基本遵循了数据库开发的三大范式。1、第一范式:确保每列保持原子性。2、第二范式:确保表中的每列都和主键相关。3、第三范式:确保每列都和主键直接相关,而不是间接相关。本系统的数据库设计基本遵循了三大范式。此设计也为之后的编码实现打好了基础,能够有效提高对代码实现的简洁性。下表即为根据上节中所给出的E-R图设计的数据库表。1、学生信息表表4-1学生信息表Tab.4-1StudentInformationSheet字段名称数据类型字段大小是否主键说明stuidnumber4是学号nameVchar220否姓名passwordVchar220否密码sexVchar220否性别dateTimedate否出生日期phonenumber11否手机号码pcenumber5,2否运控成绩mcsnumber5,2否过控成绩epanumber5,2否嵌入式成绩flagnumber1否删除标志位2.管理员信息表表4-2管理员信息表Tab.4-2Administratorinformationtable字段名称数据类型字段大小是否主键说明manidnumber4是管理员编号nameVchar220否姓名passwordVchar220否密码4.3底层接口设计底层接口对于系统的功能实现有决定性作用,好的接口设计对系统开发后期的编码实现不言而喻。本系统的接口设计如下:intmatchStudent(Stringname,Stringpwd);booleanaddStudent(Studentstudent);//addstudent35 青岛科技大学本科毕业设计(论文)booleandelStudent0(longid[]);//deletestudentsbyid(假)booleandelStudent1(longid[]);//deletestudentsbyid(真)booleanundoDel(longid[]);//撤销ListquerySubStudent(intstart,intend);//分页StudentqueryStudentById(longid,intflag);//通过主键和状态查询booleanqueryStudentById(longid);booleanqueryStudentByName(Stringname);//通过name模糊查询booleanupdateStudent(Studentstudent);//跟新intgetRowNum();//获得总记录数intgetRowNumRB();//回收站记录ListqueryStudentBySubjectScore(Stringsubject,intscoreMin,intscoreMax);//条件查询ListquerySubStudentRB(intstart,intend);//回收站分页ListqueryStudentBySubjectScoreRB(Stringsubject,intscoreMin,intscoreMax);//回收站条件查询4.3本章小结本章主要完成了系统的框架设计工作,完成了系统的总体架构,为之后的具体编码实现打好了基础。35 青岛科技大学本科毕业设计(论文)第五章详细设计和实现本系统的准备工作到此已经完毕,在本章开始对系统功能的编码实现。5.1登录模块本系统为成绩信息管理系统,不能被随意进入,所以需要通过登录来进行身份验证。登录页面是本系统的客户入口,所以首先被设计。5.1.1功能分析1、本页面要完成两种用户验证的功能,即用户需要在本页面输入用户名和密码以及用户类型。2、本页面应该具备一定的动态效果,用来拦截错误的登录过程,比如用户名为空等;后台完成账号密码匹配功能。3、页面设计应美观、大方。5.1.2代码实现该页面的最终效果图如下图所示:图5-1学生成绩管理系统登陆页面Fig.5-1Studentachievementmanagementsystemloginpage用户通过在此页面输入用户名和密码及选择用户类型后(在页面上通过javascript控制用户名和密码不可为空),在后台(LoginServlet.java)通过与数据库中信息进行匹配,匹配成功则会进入用户类型相应的用户操作界面,失败则会返回登陆页面并有提示信息:图5-2管理员登陆成功页面Fig.5-2Administratorloginsuccesspage35 青岛科技大学本科毕业设计(论文)图5-3学生登录成功Fig.5-3Studentloginsuccesspage图5-4学生成绩管理系统登陆失败Fig.5-4Studentachievementmanagementsystemloginfailed1、在jsp页面为了防止用户过多的访问服务器,减少服务器的工作量,通过JavaScript实现在客户端验证登录信息的完整性:functioncheckName(n){//验证姓名是否为空if(n.value==""){alert("用户名不可为空")}}functioncheckPwd(n){//验证密码是否为空if(n.value==""){alert("密码不可为空")}}functioncheckAll(){//登录验证if(document.getElementById("n").value!=""&&document.getElementById("p").value!=""){returntrue;}else{alert("有信息为空");returnfalse;}}2、当用户点击登录按钮之后,会把用户名等信息通过post的方式提交到LoginServlet,验证是否为真实用户;信息匹配成功时重定向到welcome.jsp页面,否则携带者“密码或用户名错误”的信息转发到login.jsp。LoginServlet关键代码如下://读取requestStringname=request.getParameter("name");Stringpwd=request.getParameter("pwd");Stringuser=request.getParameter("userType");//根据用户类型分别进行用户名和密码匹配35 青岛科技大学本科毕业设计(论文)if(user.equals("student")){intstuid=newStudentBizImpl().matchStudent(name,pwd);if(stuid>0){SimpleDateFormatsf=newSimpleDateFormat("yyyy-MM-dd");StringloginTime=sf.format(newDate());//把用户名、学号、登陆时间和用户类型记录到sessionrequest.getSession().setAttribute("username",name);request.getSession().setAttribute("stuid",stuid);request.getSession().setAttribute("loginTime",loginTime);request.getSession().setAttribute("userType",user);//重定向到welcome.jspresponse.sendRedirect("welcome.jsp");}else{//匹配失败转发到login.jsprequest.setAttribute("msg","用户名或密码错误");request.getRequestDispatcher("login.jsp").forward(request,response);}}if(user.equals("manager")){Managerm=newManager(name,pwd);35 青岛科技大学本科毕业设计(论文)if(newManagerBizImpl().matchManager(m)){SimpleDateFormatsf=newSimpleDateFormat("yyyy-MM-dd");StringloginTime=sf.format(newDate());//把用户名、登陆时间和用户类型记录到sessionrequest.getSession().setAttribute("username",name);request.getSession().setAttribute("loginTime",loginTime);request.getSession().setAttribute("userType",user);//重定向到welcome.jspresponse.sendRedirect("welcome.jsp");}else{//匹配失败转发到login.jsprequest.setAttribute("msg","用户名或密码错误");request.getRequestDispatcher("login.jsp").forward(request,response);}}}5.2学生端主页模块学生登录成功后可在欢迎页面点击“进入学生成绩管理系统”按钮,通过超链接的方式到后台DetailStudentServlet提取对应学生详细信息,并转发到学生主页。本页面显示学生的个人详细信息,因为业务的需求本页面只提供显示功能,并没有编辑功能。图5-5学生个人主页35 青岛科技大学本科毕业设计(论文)Fig.5-5StudentPersonalHomepage5.3管理端主页模块本页面为管理端主页,承担了本系统的大部分功能:学生信息列表、成绩范围查询、新增学生用户入口、删除学生用户、回收站入口等。图5-6管理端首页Fig.5-6AdministratorsHomepage5.3.1学生信息列表1、信息显示业务逻辑当管理员用户从欢迎页面点击“进入学生管理系统”按钮之后,会通过当前页面的location对象的href=’StudentListServlet?pageNow=1’进入到后台servlet层。在StudnetListServlet的doGet(request,response)方法中取出request中携带的pageNow,通过dao层的分页查询函数实现相应页面数据的提取,并做好页数和显示记录数的控制。然后通过转发的方式转发到管理端首页。StudentListServlet关键代码如下:intpageNow;//存当前页intpageCount;//存总页数intpageSize=5;//每页显示记录数introwNum;//记录总记录数Stringpage="1";try{page=request.getParameter("pageNow").toString();}catch(NullPointerExceptione){try{page=request.getSession().getAttribute("currentPage").toString();35 青岛科技大学本科毕业设计(论文)}catch(NullPointerExceptione1){response.sendRedirect("login.jsp");}}//注销查询条件if(request.getSession().getAttribute("subject")!=null){request.getSession().removeAttribute("subject");request.getSession().removeAttribute("scoreMin");request.getSession().removeAttribute("scoreMax");}//控制当前页码最小值pageNow=Integer.parseInt(page);pageNow=pageNow<=1?1:pageNow;StudentBizbbi=newStudentBizImpl();//得到总记录rowNum=bbi.getRowNum();//得到总页数pageCount=rowNum%pageSize==0?rowNum/pageSize:rowNum/pageSize+1;35 青岛科技大学本科毕业设计(论文)//控制当前页最大值pageNow=pageNow>=pageCount?pageCount:pageNow;//控制分页查询条件intstart=(pageNow-1)*pageSize+1;intend=start+pageSize-1>rowNum?rowNum:start+pageSize-1;//封装request并转发到index.jsprequest.setAttribute("list",bbi.querySubStudent(start,end));request.setAttribute("lastPage",pageNow-1);request.setAttribute("nextPage",pageNow+1);request.setAttribute("endPage",pageCount);request.getSession().setAttribute("currentPage",pageNow);request.getRequestDispatcher("index.jsp").forward(request,response);1、列表外加功能(1)全选功能为了管理员用户在使用本列表进行操作时的易用性,在列表设计时在表格第一列添加了全选等复选框来完成多选和全选等操作。当用户点击全选复选框时,本业内所有记录被选中,释放全选则所有记录同时被释放;当所有记录被选中时,全选复选框也同时被选中。代码如下:/**全选*checked则全选*否则松开全部*/35 青岛科技大学本科毕业设计(论文)functionchooseAll(n){varids=document.getElementsByName("stuId");if(n.checked){//$("[name=stuId]").checked=true;for(vari=0;i首页上一页下一页尾页5.3.2学生信息删除功能用户通过在任意页面选中一个或一个以上的学生后,点击删除按钮即可完成相应的删除操作。1、业务逻辑介绍当用户选中学生信息不为空时,点击删除submit按钮,会把选中的信息通过post的方式提交到后台DelStudentServlet,通过在后台调用StudentDaoImpl类的delStudent1(intid[])方法,来实现对相应学生用户flag属性的修改,完成在显示学号列表的隐藏操作。并在页面内显示删除成功与否信息。图5-7删除成功Fig.5-7successfullydeleted2、后台关键代码//提取学号数组String[]stuIds=request.getParameterValues("stuId");int[]ids=newint[stuIds.length];for(inti=0;ilist=bbi.queryStudentBySubjectScore(subject,smin,smax);introwNum=list.size();intpageSize=5;//每页显示记录条数intpageCount=rowNum/pageSize==0?rowNum/pageSize:rowNum/pageSize+1;//控制总页数//当前页码设置和读取和控制intpageNow=1;if(request.getParameter("pageNow")!=null){pageNow=Integer.parseInt(request.getParameter("pageNow"));}pageNow=pageNow>=pageCount?pageCount:pageNow;pageNow=pageNow<=1?1:pageNow;intstartIndex=(pageNow-1)*pageSize;intendIndex=startIndex+pageSize>rowNum?rowNum:startIndex+pageSize;//封装requestrequest.setAttribute("startIndex",startIndex);request.setAttribute("endIndex",endIndex);35 青岛科技大学本科毕业设计(论文)request.setAttribute("lastPage",pageNow-1);request.setAttribute("nextPage",pageNow+1);request.setAttribute("endPage",pageCount);request.setAttribute("list",list);//转发到request.getRequestDispatcher("queryStudent.jsp").forward(request,response);}catch(NumberFormatExceptione){response.sendRedirect("StudentListServlet");}catch(NullPointerExceptione1){response.sendRedirect("StudentListServlet");}5.5新增学生模块5.5.1业务逻辑用户在点击主页或者查询页面中的新增按钮之后,会触发一个超链接指向addStudent.jsp,用户在此页面完成信息的确诊录入提交后即可完成在数据库中完成学生用户的新增功能。前台控制关键信息的不为空控制,以及相应信息的格式控制。图5-9新增学生页面Fig.5-9NewStudentspage5.5.2代码实现1、后台关键代码//实例化一个studenttry{35 青岛科技大学本科毕业设计(论文)Studentstu=newStudent();stu.setName(request.getParameter("name"));stu.setSex(request.getParameter("sex"));stu.setDateTime(request.getParameter("dateTime"));stu.setPhone(Long.parseLong(request.getParameter("phone")));stu.setClassNo(request.getParameter("classNo"));stu.setPce(Double.parseDouble(request.getParameter("pce")));stu.setMcs(Double.parseDouble(request.getParameter("mcs")));stu.setEpa(Double.parseDouble(request.getParameter("epa")));//调用新增学生函数,并得到返回值if(newStudentBizImpl().addStudent(stu)){request.getSession().setAttribute("msg","添加成功");}else{request.getSession().setAttribute("msg","添加失败");}//转发到条件查询response.sendRedirect("QueryStudentBySubjectScoreServlet");}catch(NumberFormatExceptione){response.sendRedirect("StudentListServlet");}}35 青岛科技大学本科毕业设计(论文)5.6回收站模块考虑到用户可能有误删的操作,设计了回收站功能。用户第一次删除的用户会显示在回收站中,在回收站页面用户可完成已删除用户的恢复和彻底删除等操作。图5-10回收站页面Fig.5-10Trashpage5.7本章小结本章通过对系统各个功能的详细分析,进行编码设计,基本实现了需求分析的所需功能。第六章系统测试6.1测试环境软件测试通常是软件开发中的最后一个阶段,承担着检测软件功能是否实现、可靠性是否良好、是否存在bug的重要责任。对于任何系统,在实际交付用户之前都应做详细的系统测试。本系统的测试环境为:(1)硬件环境:CPUPentium(R)Dual-Core/内存8GB/硬盘500GB/计算机名SinclairWu.35 青岛科技大学本科毕业设计(论文)(1)软件环境:Windows10家庭版系统下Oracle11g作为后台数据库,在Internet信息服务(IIS)下测试的。6.2测试工作1、登录模块测试测试用例序号01测试用例名称登录模块测试被测试模块登录模块测试功能描述1、运行登录页面2、检验账号和密码是否匹配测试用例描述测试步骤1、运行大学生成绩管理系统2、打开登录页面,输入账号、密码和选择用户类型。期待输出结果1、可以显示登录页面2、输入正确信息可以成功登录3、反之,登录失败,并提示。具体测试情况:输入与测试用例测试结果输入用户名,不输入密码密码为空不输入用户名,输入密码用户名为空输入错误用户名和错误密码用户名或密码错误输入正确用户名和正确密码显示登录成功测试总结所有测试用例得到期望输出2、管理员主页模块测试测试用例序号02测试用例名称管理员主页模块测试被测试模块管理员主页模块测试功能描述1、正确显示学生信息2、具有分页功能3、全选功能4、通过管理员主页可成功进入添加、查询、回收站、登出等页面测试用例描述测试步骤1、输入管理员用户名和密码,登录本系统2、进入管理员主页3、测试全选功能4、分别点击页面内各按钮期待输出结果1、可成功进入到管理员主页2、学生信息分页显示3、学生列表具有全选功能4、各个按钮工作正常具体测试情况:输入与测试用例测试结果登录管理员账户,进入到主页显示管理员主页点击全选本页面内列表所有信息被选择中释放全选本页面内列表所有信息无被选中点击添加按钮跳转到添加页面35 青岛科技大学本科毕业设计(论文)不选学生,点击删除按钮提示请选择学生选择学生,点击删除按钮提示删除成功输入查询信息,点击查询按钮显示查询结果点击回收站按钮跳转到回收站页面点击注销登录按钮跳转到loginOut.jsp测试总结所有测试用例得到期望输出3、新增学生模块测试测试用例序号03测试用例名称新增学生模块测试被测试模块新增学生模块测试功能描述1、每一项信息在输入后给与提示2、新增学生学号不可重复3、全部信息正确,提交后可正确添加4、反之,添加失败测试用例描述测试步骤1、通过管理员主页跳转到新增页面2、验证每一项信息在输入后的提示信息3、验证学号是否可以重复4、全部信息正确,点击提交。5、有错误信息,点击提交。期待输出结果1、每一项信息当格式符合对应的要求后给予输入正确提示2、反之,给予错误提示3、全部信息正确,可成功添加学生4、反之,不可成功添加学生具体测试情况:输入与测试用例测试结果进入到新增学生页面显示新增学生用户页面每一项输入正确信息提示输入正确每一项输入错误信息提示输入错误全部输入正确信息,点击提交提示添加成功有错误信息,点击提交页面不跳转,页面内提示有错误信息测试总结所有测试用例均得到期望输出4、查询模块测试测试用例序号04测试用例名称查询模块测试被测试模块查询模块测试功能描述检测可否完成:输入想要查询的条件,可得到正确的查询结果,并以列表的方式显示测试用例描述测试步骤1、打开管理员主页2、输入查询条件3、点击查询期待输出结果得到正确的查询结果,并以列表的方式显示具体测试情况:输入与测试用例测试结果选择查询科目为过控,不输入最高分和最低分,点击查询显示所有学生信息35 青岛科技大学本科毕业设计(论文)选择查询科目为过控,输入最高分50,最低分100,点击查询提示最低分不可大于最高分选择查询科目为过控,输入最高分100,最低分50,点击查询得到正确的查询结果测试总结所有测试用例均得到期望输出5、回收站模块测试测试用例序号05测试用例名称回收站模块测试被测试模块回收站模块测试功能描述检测在回收站页面完成删除信息的撤销和彻底删除操作测试用例描述测试步骤1、进入到回收站页面2、选择学生,并点击撤销3、选择学生,点击彻底删除期待输出结果1、可以完成已删除信息的恢复2、可以完成已删除信息的彻底删除具体测试情况:输入与测试用例测试结果选择学生,并点击撤销提示撤销删除成功选择学生,并点击删除提示删除成功不选学生,并点击撤销提示请选择学生不选学生,点击删除提示请选择学生测试总结所有测试用例均得到期望输出6.3本章小结本章完成了本系统主要功能的测试工作。经测试本系统各功能达到了预期目标,工作良好,系统可以交付使用。35 青岛科技大学本科毕业设计(论文)参考文献:[1]徐庆华,刘国光.学生成绩管理系统的设计与实现[J].黄石高等专科学校学报,2001,17(2):20.21.[2]贾树刚,刘长琦.通用学生成绩管理系统设计和实现[J].太原城市职业技术学院学报,2010(4):165-166.[3]肖朝晖.基于B/S模式的学生成绩管理系统的设计与实现[J].科技信息,2010(13):69.70.[4]AnandRitu,KapadiaNikhil,JohnSindhuS.Performancemanagementsystem[M].TaraConsultancyServicesLimitedPublication,2012.[5]YuYixiu,LiangSisheng.SalesystemanalysisanddesignfortheonlinecosmeticstorebasedonJSp[c].2011IEEE2ndInternationalConferenceonSoftwareEngineeringandServiceScience(ICSESS2011),2011,438—441.[6]岳连德,孔令举.基于通用模式的高校学生成绩管理系统设计[J].计算机工程与设计,2006,27(8):1476—1478[7]王成良.何玉林基于B/S模式应用系统下的资源访问控制[J].计算机应用研究2000(4)[8]DigitallibrarybillingmanagementsystemdesignandimplementationNieYing,CommunicationsinComputerandInformationScience[J].2011,Proceedings(20)[8]徐方,邓敏.内容管理系统(CMS)的发展与应用[J].孝感学院学报,2007,(03).[9]沈炜,赵君.基于B/S模式下的学生体育成绩管理系统研发[J].信息与电脑,2012(2):52.53.[10]沈济南,梁芳.基于c/S与B/S混合模式的学生成绩管理系统设计与实现[J].牡丹江师范学院学报(自然科学版),2006(4):18.19.[11]KurniawanBudi.JavaServerFaces编程.译:刘克科王国军.北京:清华大学出版社,2008,5-6[12]MaNan,FangChao,LiuWenQiang.StorageanddisplaysystemofrelicinformationbasedonJSPandMVC[C].AdvancedMaterialsResearchAdvancedMaterialsandInformationTechnologyProcessing(AMITP2011),2011,657—662.35 青岛科技大学本科毕业设计(论文)[13]H.M.Deitel,P.J.Deitel.Java程序设计教程[M].北京:清华大学出版社,2004:917-945.[14]LiMin—Song.RealizationofelectronicticketservicesystembasedonJSP[J].AdvancedMaterialsResearch,2011,820-824.35

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭