基于JSP的学生成绩管理系统设计_第1页
基于JSP的学生成绩管理系统设计_第2页
基于JSP的学生成绩管理系统设计_第3页
基于JSP的学生成绩管理系统设计_第4页
基于JSP的学生成绩管理系统设计_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

./WORD格式整理毕业设计〔论文题目基于JSP学生成绩管理系统系别专业计算机应用技术班级姓名学号指导教师〔职称〔副教授日期毕业设计〔论文任务书系届计算机应用技术专业毕业设计〔论文题目基于JSP的学生成绩管理系统校内〔外指导教师职称工作单位及部门联系方式副教授计算机工程系一、题目说明〔目的和意义:利用JSP技术开发一个学生成绩管理系统,它可在Web上运行。使用本系统,可以实现学生成绩管理的主要任务。本设计题目主要利用Java和JSP实现基于B/S/S模式的WEB开发。在设计与实现过程中将涉及JBuilder或NetBeans、HTML和JSP的使用技巧及常用的Web服务器〔Tomcat。通过本设计项目的学习,学生可学会如何分析、设计与实现动态网站的建立、运行及维护;利用J2EE的特性设计结构合理的Web应用程序。二、设计〔论文要求〔工作量、内容:要求学生能够熟练使用SQLServer数据库管理系统;具有一定的JSP程序编写经验;具有网页设计的基本知识,了解HTML的常用标记,最好能熟练使用Dreamweaver等网页设计可视化工具;对J2EE的基本知识有一定的了解。此外参加设计的学生还应用做到:1.每周主动和指导教师联系两次,定期汇报毕业设计进展、听取指导教师意见,并要求有书面报告材料。2.撰写毕业论文〔1万字。3.答辩前一周将毕业论文终稿和设计结果交指导教师审定。4.毕业答辩,首先学生陈述10~15分钟,然后接受答辩组成员的5~10分钟的提问。5.每个学生必须独立完成毕业设计<论文>;6.毕业设计<论文>书写规范、文字通顺、图表清晰、测试数据完整、结论明确;7.毕业设计<论文>应有中英文摘要<150—200字>;8.毕业设计<论文>正文前附《毕业设计<论文>任务书》,后附参考文献;9.毕业设计<论文>要求文字打印,统一格式,统一封面,装订成册〔详见毕业设计撰写要求。三、进度表日期内容第15周第16周第17周第18-19周第20周第1-2周〔下学期通过在学校教务处的实际调研、参考和学习网上成功的各种"信息管理系统",借助书店、图书馆查阅相关资料,制定设计计划,进行需求分析,以电子邮件形式提交分析报告。系统功能设计,网站总体架构设计,以电子邮件交指导老师。要求通过小组答辩方可进行下一阶段设计。数据库设计,将所有数据表以电子邮件方式交指导老师。要求通过小组答辩方可进行下一阶段设计。根据系统需求,配置软件、硬件开发环境,为编码、调试作好必要准备。并写出书面报告,以电子文档提交指导教师审定。代码设计与实现对毕业设计进行总结,认真阅读毕业设计〔论文的书写要求,撰写毕业论文。将毕业论文以书面与电子文档两种形式,提交指导教师批阅。论文答辩,进一步完善毕业论文,提交终稿。完成日期第20周〔本学期答辩日期第1-2周〔下学期四、主要参考文献、资料、设备和实习地点及翻译工作量:〔一参考文献[1]张伟编著.《Java程序设计实战训练》.人民邮电出版社,2004.10[2]王诚梅等编著.《JSP案例开发集锦》.电子工业出版社,2005.8[3]柏亚军编著.《JSP编程基础及应用实例集锦》.人民邮电出版社,2001.5[4]黄明,梁旭编著.《著Java信息系统设计与开发实例》.机械工业出版社,2004.4[5]求是科技编著.《Java数据库系统开发实例导航》.人民邮电出版社,2004.5[6]张洪斌编著.《JBuilder9集成开发实例解析》.机械工业出版社,2004.2[7]《用多媒体学DreamweaverMX2004》.北京中电电子出版社,2005.1[8]苏啸编著.《数据库原理与SQLServer2000教程》.北京工业大学出版社,2002.10[8]吴亚峰编著.《精通NetBeans》.人民邮电出版社,2007.2〔二设备和实习地点Pentium4微机三台〔一台服务器,两台工作站,实习实训基地〔三翻译工作量英文摘要250单词以内,关键词5—8个词。注:本任务书要求一式四份,一份系部留存,一份报教务处实践教学科,学生每人一份,指导教师一份。.摘要本系统的全称是学生成绩管理系统,基于B/S模式下,采用的技术方案为JSP+Tomcat+SQLServer,即使用JSP作为Web服务器端开发语言,采用Tomcat作为Web服务器和JSP引擎,采用SQLServer作为后台网络数据库管理系统。其中包括学生成绩管理系统开发技术的考虑和选择、学生成绩管理系统的系统分析、系统设计,实现系统的代码设计等相关内容;并介绍了系统运行所需要软件和使用方法,以及一些辅助工具。在本系统中包括七个大的模块:用户登陆模块、成绩管理模块、成绩录入模块、成绩修改模块、记录查询模块、记录排序模块和记录删除模块。在进入系统时,先进入到主页面后,需要选择自己的登录身份进行登录,不同的身份进入系统的使用功能不同。关键字:成绩管理数据库JSPB/SAbstractThefullnameofthesystemisstudentperformancemanagementsystem,basedontheB/Smode,theuseofthetechnologyprogrammeTomcat+JSP+SQLServer,namely,theuseJSPasaWebserver-sidedevelopmentlanguage,usingasaWebserverandTomcatJSPengine,usingSQLServerasabackgroundnetworkdatabasemanagementsystem.Includingstudentperformancemanagementsystemsdevelopmentandtechnicalconsiderationschoice,studentperformancemanagementsystemanalysis,systemdesign,realizationofthecodedesign,andotherrelatedcontent,andoperationofthesystemintroducedbytheneedforsoftwareandtheuseofmethods,aswellassomeauxiliarytool.Inthissystem,includingthesevenmajormodules:userslandingmodule,performancemanagementmodule,resultsentrymodule,modulerevisedresults,recordsQueryModule,recordsortingmoduleandmoduletodeleterecords.Enterthesystem,thefirsttoenterthehomeside,needtochoosetheirownidentitySignlogindifferentidentitiesaccesstothesystemusingdifferentfunctions.Keywords:performancemanagementdatabaseJSPB/S.目录摘要IAbstractII第1章绪论11.1项目开发背景11.2可行性分析11.2.1技术可行性21.2.2管理可行性21.2.3经济可行性21.2.3操作可行性2系统设计原则3第2章需求分析42.1系统分析42.2数据分析42.2.1E-R模型42.2.2数据字典52.3系统的环境需求62.3.1软件环境62.3.2硬件环境6第3章总体设计73.1运行模式的选择73.2相关技术简介8目前流行开发技术的比较83.2.2JSP技术简介93.2.3SQLServer简介113.3系统总体框架设计113.4系统功能模块设计12主要功能模块133.4.2系统主要流程图133.5系统界面设计153.5.1首页面设计153.5.2登录界面163.5.3管理员成绩管理界面163.5.4成绩录入界面173.5.5成绩修改界面173.5.6成绩查询界面173.5.7成绩排序界面183.5.8成绩删除界面183.6数据库逻辑设计18.第4章详细设计及编码204.1数据库连接204.2重要模块设计214.2.1管理员登录模块214.2.2教师登录模块21学生登录模块22成绩录入模块234.2.5成绩修改模块234.2.6成绩查询模块234.2.7记录排序模块24记录删除模块244.3代码实现25代码设计25数据库连接26数据库操作代码26第5章测试过程描述315.1测试分析过程315.1测试调试的步骤315.2测试结果325.3测试中遇到的问题及解决方案32总结33附录34致谢36参考文献37.第1章绪论随着计算机技术的快速发展,特别是计算机网络的发展,越来越深刻的改变了人们生活的方方面面,使得人们能以更低廉的价格,开发出更方便、更实用的网络工具。各种在线服务系统,更是深刻的影响了人们的管理方式,人们可以通过网络实现系统的管理。学生成绩管理系统,为高校管理学生的成绩提供了一种方便、快捷的方式,它可以让人们实现学生成绩的无纸化管理。1.1项目开发背景近年来,随着计算机技术的发展和互联网时代的到来,我们已经进入了信息时代,也有人称为数字化时代,在这数字化的时代里,学校的教学管理都受到了极大的挑战。通过软件工程手段,将学校的管理移植到计算机上进行,为了使学校能够对学生的成绩管理工作有条理的进行和减轻工作人员管理资料的强度,使学校各种资料高效,无误的进行管理,并使学校的管理转向数字化、网络化,为使得高校对于学生成绩的管理更加方便,快捷出份力。在高校教育教学活动中,学生成绩的管理是学校的重要环节。一所高校如何开展教学工作,并且如何将学生的考试成绩进行高效的管理,学生成绩管理系统就成为学校的一项重要而且艰巨的任务。对于一所高校来说,它所拥有的学生成千上万,而如果想作到通过人力资源来管理这些学生的考试成绩,这对管理人员来说必然是一个挑战。在计算机技术突飞猛进的今天,我们完全可以借助于计算机的力量,通过现有的科学知识,开发出一套行之有效的管理系统,来帮助人们处理这纷乱复杂的信息,学生成绩管理系统便应运而生了。由于各个高校的人数都很多,为了能够更好的管理我们的学生考试成绩信息,所以开发此系统就显得尤为重要了。成绩管理系统主要有以下功能:成绩录入功能、成绩修改功能、记录查询功能、记录排序功能和记录删除功能。1.2可行性分析可行性分析也称为可行性研究,是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。技术可行性技术上的可行性分析主要分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。校友登录系统采用了当前流行的Browser/Sever模式进行开发。该模式具有许多传统体系结构不具备的优点,而且又紧密的结合了面向对象编程的技术,是技术发展的大势所趋,它把应用系统带入了一个崭新的发展时代。数据库服务器选用SQLServer2000数据库,它能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。它的灵活性、安全性和易用性为数据库编程提供了良好的条件。因此,系统的软件开发平台已成熟可行。硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。管理可行性可行性分析也称为可行性研究,是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。经济可行性在经济上,"学生成绩管理系统"的设计与代码实现可在普通PC机上,再附加相应服务器端软件、数据库软件、浏览器及相应开发工具,如:Dreamweaver7.0、UltraEdit等,既可实现"学生成绩管理系统"的界面设计与代码编写。操作可行性在操作性上,由于"学生成绩管理系统"采用的是Browser/Server〔浏览器/服务器模式,服务器端采用Web方式进行应用系统开发,通过浏览器访问该"学生成绩管理系统",所以,在普通PC机上,再附加相应软件既可进行调试运行并实现其相应的功能。1.2.4系统设计原则1.实用性采用较为成熟而实用的技术,使系统建设的投入产出比最高,有良好的效益。2.可靠性系统中的软硬件及信息资源应满足可靠性设计的要求,保证系统长期安全的运行。3.先进性在实用的前提下,尽可能跟踪国内外先进的计算机软硬件技术、信息技术和网络通信技术,使系统具有较高的性能指标。4.可扩充性系统的软硬件具有升级扩充的余地,不因系统的扩充、升级或改型使系统丧失功能。5.安全性系统应具有必要的安全保护和保密设置,具有很强的应对计算机犯罪和防范病毒的能力。6.用户界面友好性贯彻面向最终端用户的原则,设计并制作友好的用户界面,使用户界面的操作简单直观,易于学习掌握。7.健壮性系统应具有较强的抗干扰能力和容错能力。对各类用户的错误操作和异常情况应有提示或自动消除能力。8.可自适应性系统对不断发展和完善的调查和开发方法具有一定的适应能力.第2章需求分析在可行性分析阶段已经粗略的研究了该项目的需求,并分析了开发平台及软件的可行性,但为了准确的确定目标系统必须做什么,需要进行详细的调研,了解用户的明确需求,进一步明确了本软件所实现子系统的功能。2.1系统分析学生成绩管理系统是以SQLServer2000作为后台数据库,采用目前最流行的动态网页技术——JSP技术开发而成。为了使自己的系统能够达到用户的需求和系统本身的完整性,需要对系统中的各个需求进行详细的分析,才能使其满足需求,提高系统的的可读性,使系统更加完美。在本系统中包括七个大的模块:用户登录模块、成绩管理模块、成绩录入模块、成绩修改模块、记录查询模块、记录排序模块和记录删除模块。我们只需要为实现准备一个数据库db,本系统包含四张表,分别有学生成绩表<students>,该表保存学生成绩;管理员登录网站的帐号表<login>,该表保存管理员登录的帐号;教师登录网站的帐号表〔login2,该表保存教师登录的帐号;学生登录网站的帐号表〔login1,该表保存学生登录的帐号,课程信息表〔course,该表保存课程的相关信息。系统特点:1全面构建简单、快捷的学生成绩管理,实现无纸管理。2具有一定的可移植性。3用户界面友好。本系统的性能力求易于使用,具有较高的扩展性和可维护性。2.2数据分析E-R模型在数据库应用系统的开发过程中,数据库的结构设计是一个非常重要的问题。这里所说的数据库结构设计是指数据库中各个表结构的设计。在进行概念结构设计时不考虑所采用的数据库管理系统<DBMS>、操作系统类型等问题,只考虑设计出能够满足用户需求的各种实体以及它们之间的关系,这里只对班级、学生和学校管理采用E-R图<Entity-Relation,实体-关系图>进行描述。通过E-R图的描述,可以清楚地看出实体与实体之间的关系:学生成绩管理系统的E-R图如图2-1所示:管理员管理员用户名密码用户名密码教师管理讲授课程课程名课程号学生学号姓名用户名密码选修图2-1学生成绩管理系统E-R图数据字典系统使用的数据大部分是结构化的数据,如以下的信息:管理员帐号表〔login:存放管理员的张号和密码。教师帐号表〔login2:存放教师的帐号和密码。学生帐号表〔login1:存放学生的帐号和密码。学生成绩表〔students:存放学生的各科成绩。课程表〔course:存放课程的课程号和课程名。这些数据多为文本型的数据,故适合使用中小型的数据库,微软的SQLServer数据库恰好是一款符合这些要求的产品。使用SQLServer数据库的另外一个好处就在于jsp和tomcat的web服务器运行平台,包括操作系统都是微软公司的产品,这使系统各个模块间的相互协作相对容易。存储结构的设计是依照数据库的关系范式理论来设计实现的。数据库的访问采用结构化查询语言SQL,此语言是非面向过程的语言,使用灵活方便,而且可以提供插入、删除、修改各种操作。2.3系统的环境需求2.3.1软件环境操作系统:WindowsXPProfessional所用软件:1、JDK1.6〔Java的编译环境,是所有Java开发工具的运行基础2、tomcat5.5<Jsp服务器端软件>3、Dreamweaver7.0〔网页制作工具,可以高效的开发HTML代码4、MicrosoftSqlserver2000〔微软的数据库,简单易用5、辅助工具:UltraEdit10〔好用的文本编辑器,用于编写代码2.3.2硬件环境个人计算机奔四的CPU、80G512内存、集成显卡.第3章总体设计3.1运行模式的选择几乎没有限制的客户端访问和极其简单化的应用程序部署和管理是B/S模型的优势所在。它和C/S模型比较优点极为突出。两层技术模型〔Two-TierArchitecture是指客户机直接与服务器交流,没有其他服务介入的技术模型。对用户量在12—100的局域网环境中,两层模型的确是个不错的方案。由于该模型中,所有的用户连接都是被保持的,也就是说即使在空闲状态,连接依然存在。所以,用户的并发请求数量有限的。为了解决这个限制,使得成千上万的用户可以被无顾虑地添加,最好选用三层模型。B/S结构,即Browser/Server〔浏览器/服务器结构,是随着Internet技术的兴起,对C/S结构的一种变化或者说是改进的结构。用户界面完全通过浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成三层结构,是一种全新的软件系统构造技术。这种结构的一个重要的特点是,用户可以完全不需要安装客户端软件,当然也不需要担心任何软件升级和不兼容等任何客户端所遇到的问题。相比之下,B/S模型的优点显而易见,更适合这个网站的构建,有利于网站的维护和扩充。本系统的运行模式采用的是浏览器/服务器模式〔Browser/Server模式,充分利用了浏览器/服务器两种技术原有的优点,。B/S模型结构图如图3-1所示:图3-1B/S模型结构图3.2相关技术简介目前流行开发技术的比较目前流行的技术有JSP、ASP、PHP等,结合HTML都能够快速的开发网站,它们之间互有优缺点。ASP由于其简单功能实用等方面受到广大朋友的喜欢,再加上MS的强有力支持,可以说是时下作站点流行的语言,几乎可以实现在C/S能够实现的所有功能,可以说确实具有相当的竞争力。ASP的代码实现也很简单,但是它的缺点是,由于MS长久以来的推广方式上,它只能运行在MS的平台上,因此在关键性的应用上使设计开发面临困难。图3.2ASP工作机制PHP借助源码公开,使它迅速成为世界上目前应用最为广泛的站点制作语言之一。代码的可重复性应用变的简单。加上它和Linux,Apache和MySql的紧密配合,关键性的应用也没有问题。但是它有一个比较大的麻烦,就是没有一个非常有实力的公司专门给它做支持,因此相关的学习资料比较少,目前在国内使用它的站点比较多,但是专门讲解它的站点就比较少。给初学者带来了很多的麻烦。图3.3PHP工作机制JSP是Sun公司推出的新一代站点开发语言,Sun公司借助自己在Java上的不凡造诣,将Java从Java应用程序和JavaApplet之外,又有新的硕果,就是Jsp--JavaServerPage。Jsp可以在Serverlet和JavaBean的支持下,完成功能强大的站点程序。支持绝大多数的服务器、浏览器和相关工具。由于使用可重用的组件取代了对页面脚本语言的严重依赖,JSP技术加快了开发的速度。所有JSP的实现均支持以Java编程语言为基础的脚本语言,图3.4JSP工作机制比较结果见表4.1、4.2、4.3表3.5ASPPHPJSP技术的平台性能比较表3.6ASPPHPJSP技术的应用性能比较技术名称ASPJSPPHP对数据库的支持好好好开发难易度容易容易较难对组件的支持支持支持不支持执行方式解释执行编译之后执行解释执行跨平台不好好好表3.7其它比较结果JSP技术简介JSP<JavaServerPages>是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件<*.htm,*.html>中插入Java程序段<Scriptlet>和JSP标记<tag>,从而形成JSP文件<*.jsp>。JSP技术优点:一次编写,到处运行。在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改。系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP/PHP的局限性是显而易见的。强大的可伸缩性。从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理、消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。JSP技术特点用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。

Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。JSP与JavaServlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。

JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。JavaServlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。3.2.3SQLServer简介SQLServer2000是建立在SQLServer7.0在可伸缩性、可用性、可管理性和数据仓库成功的基础上,并且引入了针对电子商务的重要新功能。在高性能和企业级可伸缩性领域,SQLServer2000设计成利用Windows2000对更多处理器、更大的系统内存的支持,最终达到支持64位硬件平台。在不断提升可用性的努力过程中,SQLServer2000采用Windows2000四路群集,提供了大大改进的群集支持。SQLServer7.0已经在可管理性和易用性方面在行业内领先,SQLServer2000通过与Windows2000活动目录紧密结合进一步改进了这些功能。而且,SQLServer2000还包含对现有管理工具和实用程序的重大改进,并引入更具自我调节和自我管理的引擎功能。

通过与OLAP服务、数据转换服务、存储库和英文查询的紧密结合,SQLServer7.0代表了行业内最全面的数据仓库和决策支持平台。SQLServer2000继续了这种创新,在整个系统内进行了重要的改进。特别重要的是,SQLServer2000关系引擎增加了实质化的视图,改善了在特大型数据库环境中执行复杂查询的性能。同时,SQLServer2000引入了新的数据挖掘功能,可自动发现在大量数据之间隐藏的关系并可基于历史数据作出预测。这些数据挖掘功能将要实施,以向最终用户隐藏这种尖端技术的复杂性,并允许开发人员将第三方的数据挖掘产品轻松集成进客户的应用程序中。最后,在电子商务领域,SQLServer2000高度集成了对XML和通过Web访问数据库的支持。

SQLServer2000按照设计可以为部署和维护强大的、易于管理、支持商务活动的Web站点提供最好的性能,这些站点可以从事商家和商家之间或商家与客户之间的交易。在寻求一个支持您的电子商务解决方案的数据库时,需要考虑的项目包括:可用性、性能、可管理性和价格。因此在结合开发校友登录系统――适合于中小型企业使用,后台数据库采用SQLServer2000。3.3系统总体框架设计成绩管理系统采用从数据层到应用层,最后到用户接口层进行设计。系统总体架构图如图3-7所示:数据层数据层设计数据服务配置系统信息应用层用户接口层图3.8系统总体架构图3.4系统功能模块设计本系统的开发设计思想在于:第一,系统采用B/S体系结构,Browser端负责提供逻辑表达、显示用户界面信息、访问数据库服务器,server端则用于提供数据服务;第二,系统应当符合校友登录系统满足管理员管理该系统的需要,并达到操作过程中的直观、方便、实用、安全等要求;第三,采用模块化程序设计方法,以便于系统功能的修改和维护。根据DreamWeaver自身编制程序的特点以及对系统功能的分析,得出了图3-9所示的功能模块图:首界面首界面管理员登录教师登录学生登录成绩录入成绩修改成绩查询成绩排序成绩删除成绩录入成绩排序成绩查询成绩查询图3.9系统功能模块图主要功能模块1.管理员登录模块管理员登录进入到管理员权限主界面后,可以实现如下的功能:〔1成绩录入:管理员可以方便的应用这一功能对学生的成绩进行录入,在录入的过程中,只需填入学生的学号、姓名及各科成绩即可。〔2成绩修改:管理员要对录入错误的成绩进行修改时,只需填入该学生的学号和正确的成绩,即可修改成功。〔3成绩查询:在进行成绩查询时,系统提供两种查询方法,分别是按学号查询和按成绩段查询。按学号查询时,直接把所要查询的学生的学号输入即可;按成绩段查询时,输入各科所要查询的成绩段即可。〔4成绩排序:在进行学生成绩排序时,该系统提供了6种排序方法,分别有按学号排序、按姓氏排序、按数学成绩排序、按英语成绩排序、按物理成绩排序、按总成绩排序。管理员只需根据需求选择排序方式即可。〔5成绩删除:在进行成绩删除时,只需输入要删除学生的学号即可。2.教师登录模块教师登录进入到教师权限主界面后,可以实现的功能有成绩录入、成绩排序、成绩查询三种。在实现每项功能时,操作方法与管理员登录模块中实现该项功能时的方法相同。3.学生登录在学生登录该系统后,只能对成绩进行查询,其操作方法和管理员查询成绩的操作方法相同。系统主要流程图系统实现流程图如图3.10所示:完成各个界面的制作完成各个界面的制作制作数据库,完成各个表,并建立数据源编写源代码,保存.jsp将代码保存,复制到Root下,进行调试完成测试,保证每个程序能正常运行!调试系统能够正常应用各个功能图3.10系统实现流程图系统工作流程图如图3.11所示:管理员登陆界面管理员登陆界面成功登陆的应用界面数据库处理首界面管理员登录面教师登录学生登录成绩录入成绩修改成绩查询成绩删除录入处理修改处理查询处理删除处理教师登录成功登陆的应用界面成绩排序排序处理成绩录入成绩查询录入处理查询处理数据库处理学生登录成功登陆的应用界面成绩查询查询处理数据库处理成绩排序排序处理图3.11系统工作流程图3.5系统界面设计3.5.1首页面设计该界面主要是为用户提供要选择登录的身份,只有正确选择才可能实现其功能。3.5.2登录界面该界面主要是为用户进入系统提供登录口,只有成功登录,用户才能实现该权限下的各项功能。3.5.3管理员成绩管理界面该界面体现了整个系统所能实现的功能,只有学生成绩系统管理员才能进入到该界面,对所有功能进行操作。3.5.4成绩录入界面该界面实现学生的成绩录入功能,只有成绩管理员和教师才能进入该界面,实现该功能。3.5.5成绩修改界面该界面实现对学生成绩的修改,只有学生成绩系统管理员才能进入该界面,实现对学生的成绩进行修改。3.5.6成绩查询界面该界面实现学生的成绩的查询,本系统的所有用户都可以进入该界面,实现对学生成绩的查询。3.5.7成绩排序界面该界面实现对学生成绩的排序,只有管理员和教师才能进入该界面,进入该界面后可以选择不同的排序方式,实现对学生成绩的排序。3.5.8成绩删除界面该界面实现对学生成绩的删除,只有学生成绩系统管理员才能进入该界面,实现对学生成绩的删除。3.6数据库逻辑设计服务器上建名为db的数据库。其中包括以下表:login,login1,login2,students,course下面将具体介绍数据库中各个表的结构。整个系统只有一个管理员登录入口,所以只要在数据库里建一个管理员表即可;另外因为本系统的用户除了管理员之外,还有教师和学生,这就要求在数据库里再建一个教师帐号和一个学生帐号表,根据不同的管理权限进入不同的后台管理系统对其中的数据进行操作。另外在本系统中还涉及到一个课程信息表。管理员账号表<login>如表3-12所示,教师帐号表〔login2如图3-12所示,学生帐号表〔login1如图3-13所示,学生成绩表<students>如图3-14所示,课程信息表<course>如图3-15所示。在前期E-R图建成的前提下,将数据关系在表中实现,完成前期建表工作表结构如下:管理员帐号表<login>和教师帐号表<login2>的结构〔图表3-12字段名数据类型字段宽度xmvarchar50pwchar10图表3-12学生帐号表<login1>的结构〔图表3-13字段名数据类型字段宽度xhvarchar50pwchar10图表3-13学生成绩表<students>的结构〔图表3-14字段名数据类型字段宽度numbervarchar50namechar10mathfloat5englishfloat5phicsfloat5图表3-14课程信息表<course>的结构〔图表3-15字段名数据类型字段宽度numbervarchar50namechar10图表3-15.第4章详细设计及编码详细设计阶段的任务在于要设计出程序的"蓝图",因此,详细设计的结果基本上决定了最终的程序代码的质量。详细设计的目标不仅仅是逻辑上正确地实现每个模块的功能,更重要的是设计的处理过程应该尽可能简明易懂。结构程序设计技术是实现上述目标的关键技术,因此是详细设计的逻辑基础。在编码阶段就可以把详细设计时的描述转换成某种计算机语言,作为校友登录系统工程的一个步骤,编码是设计的自然结果,因此,代码的质量主要取决于系统总体设计的质量。但是,程序设计语言的特性和编码途径也会对程序的可靠性、可用性以及可维护性产生深远的影响。4.1数据库连接数据源Java应用程序与数据库的连接方式有四种,本系统中采用JDBC-ODBC方式连接数据库。这种连接方式分三个步骤:首先,创建一个数据源,其次,加载JDBC-ODBC驱动程序,最后,建立一个到数据库的连接。数据源是对数据库的一种映射。我们可以把数据源理解为数据库本身,一个数据源对应一个数据库。我们为该数据库创建数据源的步骤如下:〔1打开ODBC管理工具,选择"系统DSN"项,单击"添加"按扭;〔2选择"SQLServer"作为数据源的驱动程序,单击"完成"按扭;〔3填写数据源名"grade",选择服务器"〔local",单击"下一步"按扭;〔4选择"使用网络登录ID的WindowsNT验证",单击"下一步"按扭;〔5从下拉菜单中将默认的数据库改为"db",单击"下一步"按扭;〔6测试数据源连接是否成功。若成功则可以连接系统,如不成功需要再次建立和编辑数据源。JDBC-ODBC桥接器JDBC-ODBC桥接器是把应用程序与数据源连接起来的驱动程序。因此创建数据源以后,还要加载JDBC-ODBC桥接器,即加载驱动程序。下面是加载驱动程序的代码:try{ Class.forName<"sun.jdbc.odbc.JdbcOdbcDriver">; } catch<Exceptione> { System.out.println<e>; }4.2重要模块设计管理员登录模块管理员登录的过程如下:在首页中选择"管理员登录",即可进入到denglu.htm界面,在该界面中填写用户名和密码,并确定登录,在denglu.jsp中对用户名和密码进行验证,如果数据库中的表不存在则提示重新登录;如果登录成功则进入jiemian.jsp界面。在jiemian.jsp界面中,通过连接分别进入:成绩录入<tianjia1.jsp>、成绩修改<xiugai1.jsp>、成绩查询<chaxun1.jsp>、记录排序<paixu.jsp>、记录删除<shanchu1.jsp>,可对学生的成绩进行相应的管理。模块图如图4-1:成功登录的应用界面成功登录的应用界面成绩修改成绩查询成绩排序删除记录成绩录入管理员登录界面图4-1教师登录模块教师登录的过程如下:在首页中选择"教师登录",即可进入到jsdenglu.htm界面,在该界面中填写用户名和密码,并确定登录,在jsdenglu.jsp中对用户名和密码进行验证,如果数据库中的表不存在则提示重新登录;如果登录成功则进入jsjiemian.jsp界面。在jsjiemian.jsp界面中,通过连接分别进入:成绩录入<tianjia1.jsp>、成绩查询<chaxun1.jsp>、记录排序<paixu.jsp>,可对学生的成绩进行相应的管理。模块图如图4-2:成功登录的应用界面成功登录的应用界面教师登录界面成绩录入成绩排序成绩查询图4-2学生登录模块学生登录的过程如下:在首页中选择"学生登录",即可进入到xsdenglu.htm界面,在该界面中填写用户名和密码,并确定登录,在xsdenglu.jsp中对用户名和密码进行验证,如果数据库中的表不存在则提示重新登录;如果登录成功则进入chaxun1.jsp界面。在chaxun1.jsp界面中,即可对学生的成绩进行查询。模块图如图4-3:成功登录的应用界面学生登录界面成功登录的应用界面学生登录界面成绩查询成绩录入模块通过管理员或者教师成功登陆界面可进入该模块,对数据添加时若填写不完整则成绩录入:失败,若完整则输出:成功。在数据库中已经存在有该条记录说明该录入模块已经完成了对数据的录入,可返回到成功登录的界面。模块图如图4-4:成功登录的应用界面成功登录的应用界面成绩录入录入处理图4-4成绩修改模块通过管理员成功登录界面进入该模块,当你输入一个关键字:本系统为:学号进行修改,当点击确定后,数据库中的数据已经被修改过了,如果没有此学号则显示:没有这个学号,如果修改成功则无提示,可返回到成功登录的界面。模块图如图4-5:成功登录的应用界面成功登录的应用界面成绩修改修改处理图4-5成绩查询模块该查询模块通过所以用户成功登录模块进入后,可看到两种查询的方法,一是可通过学号对信息进行查询:当输入某一个学号时则出现该学号的各个成绩,若无该学号则不显示任何东西。二是可通过各个成绩的限制来查询成绩,比如某一分数段成绩可以查询!若没有满足条件的记录则返回空,如有则在chaxun1.jsp中显示,可返回到成功登录的界面。模块图如图4-6:成功登录的应用界面成绩查询成功登录的应用界面成绩查询查询处理图4-6记录排序模块该排序模块通过管理员或者教师成功登录模块进入后,可以进行相应的排序,其中只能对某一个字段进行排序,利用单选按钮选定对记录排序,当选定成绩记录时,排序按照降序排序,其他的按照升序排序,并赋有记录号,对名次的排序更有利。当排序成功后在paixu1.jsp中显示,若不成功则显示为空!可返回到成功登录的界面。模块图如图4-7:成功登录的应用界面成功登录的应用界面成绩排序排序处理图4-7记录删除模块该删除模块通过管理员成功登录界面进入该模块后,可以对学号的定义来删除某一条记录,当删除成功时则显示:删除成功,失败时显示:删除失败,无此学号,可返回到成功登录的界面。模块图如图4-8:成功登录的应用界面成功登录的应用界面删除记录删除处理图4-84.3代码实现代码设计功能程序名称功能描述首页shouye.html显示登录选择管理员登录denglu.html显示管理员登录界面管理员登录denglu.jsp处理管理员登陆管理员登录jiemian.jsp管理员操作功能界面教师登录jsdenglu.html显示教师登录界面教师登录jsdenglu.jsp处理教师登陆教师登录jsjiemian.jsp教师操作功能界面学生登录xsdenglu.html显示学生登录界面学生登录xsdenglu.jsp处理学生登陆成绩录入tianjia1.jsp显示录入成绩界面成绩录入tianjia2.jsp处理成绩录入成绩修改xiugai1.jsp显示修改成绩界面成绩修改xiugai2.jsp处理成绩修改成绩查询chaxun1.jsp显示查询成绩界面成绩查询chaxun2.jsp处理成绩查询成绩排序paixu1.jsp显示成绩排序界面成绩排序paixu2.jsp处理成绩排序成绩删除shanchu1.jsp显示删除成绩界面成绩删除shanchu2.jsp处理成绩删除数学成绩math.jsp处理数学成绩英语成绩english.jsp处理英语成绩物理成绩phics.jsp处理物理成绩数据库连接1.完成环境设置,导入java.sql包,命令如下:

<%@pageimport="java.sql.*"%>2.载入驱动程序Class.forName<"sun.jdbc.odbc.JdbcOdbcDriver">;3.连接到数据库

驱动器管理器保留已注册驱动器列表,调用其getConnection<>方法得到Connection对象。其中getConnection<>的参数分别是数据库服务器的IP地址、端口号、库名和登录数据库所需的账号与密码。DriverManager.getConnection<"jdbc:odbc:grade>;4.建立结果集

ResultSetrs=null;5.完整代码数据库连接代码<%@pagecontentType="text/html;charset=GB2312"%><%@pageimport="java.sql.*"%><%request.setCharacterEncoding<"GB2312">;Class.forName<"sun.jdbc.odbc.JdbcOdbcDriver">;Connectionconn=DriverManager.getConnection<"jdbc:odbc:grade>;Statementstmt=conn.createStatement<ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY>;ResultSetrs=null;%>4.2.3数据库操作代码1.查询数据库代码<%!ResultSetchaxun<Stringnumber>{Connectioncon=null;Statementsql=null;ResultSetrs=null;try{Class.forName<"sun.jdbc.odbc.JdbcOdbcDriver">;}catch<ClassNotFoundExceptione>{}try{con=DriverManager.getConnection<"jdbc:odbc:grade">;sql=con.createStatement<>;Stringcondition="SELECT*FROMstudentswherenumberLIKE"+"'"+number+"'";rs=sql.executeQuery<condition>;//con.close<>;returnrs;}catch<SQLExceptione>{returnrs;}}%>2.录入成绩数据库代码<%sql=con.createStatement<>;Stringcondition="INSERTINTOstudentsVALUES"+"<"+"'"+number+"','"+name+"',"+m+","+e+","+p+">";%>3.数据库信息更新代码<%!booleanquery<Stringnumber>{Connectioncon=null;Statementsql=null;ResultSetrs=null;try{Class.forName<"sun.jdbc.odbc.JdbcOdbcDriver">;}catch<ClassNotFoundExceptione>{}try{con=DriverManager.getConnection<"jdbc:odbc:grade">;sql=con.createStatement<>;Stringcondition="SELECT*FROMstudentswherenumber="+""+number+"";rs=sql.executeQuery<condition>;intnum=0;while<rs.next<>>{num++;}con.close<>;if<num>0>returntrue;elsereturnfalse;}catch<SQLExceptione>{returnfalse;}}Stringupdate<Stringnumber,floatnewMath,floatnewEnglish,floatnewPhysics>{if<query<number>>{Connectioncon=null;Statementsql=null;ResultSetrs=null;try{Class.forName<"sun.jdbc.odbc.JdbcOdbcDriver">;}catch<ClassNotFoundExceptione>{}try{con=DriverManager.getConnection<"jdbc:odbc:grade">;sql=con.createStatement<>;Stringcondition1="UPDATEstudentsSETmath="+newMath+"WHEREnumber="+"'"+number+"'";Stringcondition2="UPDATEstudentsSETenglish="+newEnglish+"WHEREnumber="+"'"+number+"'";Stringcondition3="UPDATEstudentsSETphics="+newPhysics+"WHEREnumber="+"'"+number+"'";sql.executeUpdate<condition1>;sql.executeUpdate<condition2>;sql.executeUpdate<condition3>;con.close<>;return"修改成功!";}catch<SQLExceptione>{return"修改失败!";}}else{return"修改者学号不存在!";}}%>4.数据库信息排序代码<%!ResultSetpaixu<Stringa6>{Connectioncon=null;Statementsql=null;ResultSetrs=null;try{Class.forName<"sun.jdbc.odbc.JdbcOdbcDriver">;}catch<ClassNotFoundExceptione>{}try{con=DriverManager.getConnection<"jdbc:odbc:grade">;sql=con.createStatement<>; Stringcondition="select*fromstudentsorderby"+a6+"desc";Stringcondition1="select*fromstudentsorderby"+a6; if<<a6.equals<"number">>||<a6.equals<"name">>>rs=sql.executeQuery<condition1>; elsers=sql.executeQuery<condition>;//con.close<>;returnrs;}catch<SQLExceptione>{returnrs;}}%>5.数据库信息删除代码<%!booleanquery<Stringnumber>//查询是否有学号是number的学生{Connectioncon=null;Statementsql=null;ResultSetrs=null;try{Class.forName<"sun.jdbc.odbc.JdbcOdbcDriver">}catch<ClassNotFoundExceptione>{}try{con=DriverManager.getConnection<"jdbc:odbc:grade","sa","123456">;sql=con.createStatement<>;Stringcondition="SELECT*FROMstudentswherenumber="+"'"+number+"'";rs=sql.executeQuery<condition>;intnum=0;while<rs.next<>>num++;con.close<>;if<num>0>returntrue;elsereturnfalse;}catch<SQLExceptione>{returnfalse;}}%><%!Stringdel<Stringnumber>//删除学号是number的学生{if<query<number>>{Connectioncon=null;Statementsql=null;ResultSetrs=null;try{Class.forName<"sun.jdbc.odbc.JdbcOdbcDriver">;}catch<ClassNotFoundExceptionevent>{}try{con=DriverManager.getConnection<"jdbc:odbc:grade">;sql=con.createStatement<>;//删除操作StringdeleteALL="DELETEFROMstudentsWHEREnumber"+"="+"'"+number+"'";sql.executeUpdate<deleteALL>;con.close<>;return"删除成功";}catch<SQLExceptionevent>{return"删除失败";}}elsereturn"没有这个学号";}%>6.数据库获取信息代码〔1管理员和登录获取信息SQL语句:StringstrSQL="select*fromloginwherexm="+"'"+UserNm+"'"+"andpw="+"'"+UserPasswd+"'";〔2教师登录获取信息SQL语句:StringstrSQL="select*fromlogin2wherexm="+"'"+UserNm+"'"+"andpw="+"'"+UserPasswd+"'";〔3学生登录获取信息SQL语句:StringstrSQL="select*fromlogin1wherexh="+"'"+xuehao+"'"+"andpw="+"'"+UserPasswd+"'.WORD格式整理第5章测试过程描述5.1测试分析过程在所有软件正常运行,创建数据源成功后,进入本系统后可以实现如下功能,即为运行成功。进入首页选择登录身份,任何身份都要有正确的用户名和密码才能登录成功,在用户名或密码错误的情况下,系统将提示出现错误,请重新登录。管理员登录成功后,可以操作系统中所有功能。教师登录成功后,可以操作的功能有成绩的录入、成绩排序、成绩查询。学生登录成功后,只能对成绩进行查询。在成绩录入的过程中,只需填入学生的学号、姓名、各科成绩即可录入成功。在成绩修改的过程中,只需填入要修改成绩的学生的学号和正确的各科成绩,即可修改成功。在成绩查询的过程中,系统提供两种查询方法,分别是按学号查询和按成绩段查询,这两种方法都实现了,即运行成功。在成绩排序的过程中,该系统提供了6种排序方法,分别有按学号排序、按姓氏排序、按数学成绩排序、按英语成绩排序、按物理成绩排序、按总成绩排序,这6种方法都实现了,即运行成功。在成绩删除的过程中,只需把要删除学生的正确的学号输入,点击"删除"即可删除成功。5.1测试调试的步骤建立数据源,并且测试创建数据源成功;将实现系统的所有代码保存到C:\ProgramFiles\ApacheSoftw

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论