JAVA学生成绩管理系统的设计与实现

上传人:沈*** 文档编号:79324087 上传时间:2022-04-23 格式:DOC 页数:32 大小:363.02KB
收藏 版权申诉 举报 下载
JAVA学生成绩管理系统的设计与实现_第1页
第1页 / 共32页
JAVA学生成绩管理系统的设计与实现_第2页
第2页 / 共32页
JAVA学生成绩管理系统的设计与实现_第3页
第3页 / 共32页
资源描述:

《JAVA学生成绩管理系统的设计与实现》由会员分享,可在线阅读,更多相关《JAVA学生成绩管理系统的设计与实现(32页珍藏版)》请在装配图网上搜索。

1、软件技术专业毕业论文学生成绩管理系统的设计与实现姓 名: 黑 玉 龙 学 号: 0809340104 指导教师: 张 哲、马 琦 雷 燕、刘 超 专 业: 软 件 技 术 二一年四月十六日 毕业论文开题报告所在系:软件学院 专业: 软件技术 学号: 0809340104 姓名 :黑玉龙毕业设计题目: 学生成绩管理系统(系统)一、 选题意义:学生成绩管理是学校管理中异常重要的一个环节,作为学校,除了育人,就是育知,学生成绩管理的信息化是整个学校教务管理中的重要一部分,能否实现这一步关系到学校办学整体效率的高低,介于它的重要性,学生成绩管理系统的开发与应用就逐渐提入议程,并占着越来越重要的份量。在

2、现代,高科技的飞跃发展,人们工作习惯的改变,特别是计算机的大量普及,人们生活节奏越来越快,怎样提高工作效率是人们首先考虑的问题。学生成绩管理是一个非常繁琐与复杂的一项工作,一个原因就是工作量大,处理繁琐。对于一个学校而言,更应该运用一些本地资源,提高管理的力度。运用学生成绩管理系统可以减轻学院教学人员的工作量,缩小开支,提高工作效率与准确率,能够让老师合理安排时间,能够尽快知道学生的考试成绩,为下一阶段的教学做准备。近几年来我国各大中专院校加快了信息化进程,基本上都建立了自己的校园网,这为我们系统的开发提供了必备的物质基础.学生成绩管理系统它能很好的解决以上的问题,极大地便捷了学生和指导老师,

3、显著地提高了工作效率。而且通过本次设计可以让学生更加熟练掌握软件开发的一般过程,并对所学知识做一个全面的总结。 二、 研究现状:随着高科技的飞跃发展,人们工作习惯的改变,特别是计算机的大量普及,人们生活节奏越来越快,怎样提高工作效率是人们首先考虑的问题。学生成绩管理是一个非常繁琐与复杂的一项工作,一个原因就是工作量大,处理繁琐。对于一个学校而言,更应该运用一些本地资源,提高管理的力度。因此建立学生成绩管理系统可以使高校满足教学和管理要求。三、 课题提纲: 调查,制作需求分析文档和系统开题报告: 据调查系统主要有3个模块:学生、教师、管理员,其各个功能是:a、学生用户模块 (1)查看个人信息。学

4、生可以根据个人用户名和密码登陆系统查询个人信息。(2)修改个人基本信息。学生依据个人信息进行正确的修改个人信息。(3)查询个人成绩。学生登陆系统后可以查询自己的成绩。b、教师用户模块 (1)查看信息 教师可以查询个人信息和学生的个人信息以及成绩。 (2)更改信息。此功能实现教师对学生的管理。 c、管理员模块 (1)对教师的添加、删除等功能; (2)对学生的添加、删除。系统详细设计:包括业务流图和数据流图的分析以及数据库的设计 程序代码编写 毕业论文的制作四、 课题进度:3.2-3.9 调查用户业务需求、制作需求分析报告3.10-3.18 详细设计3.19-3.25 详细数据库设计3.26-4.

5、7 编码,程序设计4.8-4.14 系统测试4.15-4.20 毕业论文编写五、 使用工具: 编写源码:编写源码基本使用MyEclipse,数据库文件的开发使用MySQL; 网页美工:网页美工使用Photoshop和DreamWeamver等制作jsp; 服务器:服务器端采用Apache Tomcat。 指导教师: 张哲老师,马琦老师,吕后坤老师 及其他专业相关指导老师。2010年03月10日学生签名:年 月 日 指导教师意见:签名: 院系领导意见:签名: 年 月 日 摘 要学生成绩管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于

6、前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。本系统主要完成对学生成绩的管理,包括添加、修改、删除,查询,打印信息以用户管理等六个方面。系统可以完成对各类信息的浏览、查询、添加、删除、修改等功能。系统的核心是添加、修改和删除三者之间的联系,每一个表的修改都将联动的影响其它的表,当完成添加或删除操作时系统会自动地完成学生成绩的修改。查询功能也是系统的核心之一,在系统中主要根据学生姓名和学号进行查询,其目的都是为了方便用户使用。系统有完整的用户添加、删除和密码修改功能,并具备报表打印功能。系统应用时下流行的Struts框架来开发,在底层数据库

7、连接使用数据库连接池技术,视图层采用jsp技术.JSP是Java Server Pages的缩写,是servlet的扩展,它的主要优点是能够是显示和业务逻辑分离,通过JSP来生成动态的网页,由JavaBean,Servlet或是一些Java程序来实现复杂的业务逻辑,JSP这样的特点大大的减轻了服务器的负担。除此而外JSP还具有很多的优点,比如JSP还具有JAVA语言一次编写处处运行的跨平台优点,等等。这里就不一一介绍了。所以说JSP技术是开发基于B/S架构的web应用的最佳选择。关键词:学生成绩管理;JSP;JavaBeanVAbstractThe system of managing stu

8、dents achievement file is a typical application of managing information system (know as MIS), which mainly includes developing the application interface of front-end and building up and maintaining the data-base of back-end. The former should make the function of application integrated and the usage

9、 is easy, the latter required a data-base with powerful consistency and integrality, and nice security. This system mainly completes the management to students achievement, include six aspects such as adding, modifying, deleting, searching, printing information and the customer management. The syste

10、m can complete to browse, search, add, delete, modify etc. to each kind of the function of information.System apply the technique of JSP that is very popular at present. JSP is the abbreviation of the Java Server Pages, is a servlet to expand. The main advantage is to manifest and separate the busin

11、ess logic By JSP can make dynamic web page from JavaBean, Servlet or some the procedure of Java to realize complicated business logic. Such characteristics of JSP alleviate the burden of the server In addition to this but the JSP still has a lot of advantages, for example, the JSP still has the lang

12、uage of JAVA a weave the cross-platform advantage that write circulates everywhere, etc. Here isnt introduce detailed. So JSP is the best choice in web development according to the frame of B/S.Keywords: The system of managing students achievement;JSP;JAVABean目 录摘 要IIIAbstractIV第一章 绪 论11.1 系统开发背景11.

13、2 本课题的研究意义11.3 系统概述1第二章 系统需求分析32.1 系统需求32.2 功能需求32.3 数据需求42.4 性能需求62.5 出错处理需求6第三章 系统分析73.1 可行性分析73.2 业务流程分析83.3 数据流程分析83.4 数据字典描述93.4.1 数据条目93.4.2 数据分析9第四章 系统设计114.1 系统总体结构设计114.2 系统功能模块图124.3 系统建模学生成绩管理系统用例分析134.3.1 识别参与者134.3.2 识别用例13第五章 详细设计175.1 数据库设计175.2 数据库的结构设计175.3 数据库逻辑结构设计195.4 数据库的连接205.

14、5 学生成绩管理系统的登录页面205.6 学生成绩管理系统安全性20第六章 常见问题及解决方法236.1 关于乱码问题236.2 关于非法登录问题23结束语24参考文献25致 谢26第一章 绪 论1.1 系统开发背景随着社会的发展和经济时代的到来,管理信息系统在各行各业都越来越重要,特别是教育事业。在我国,有的学校根本就没有系统,还是手工操作,手工操作还十分落后,效率极低,成本很大,以后的社会是信息的社会,信息只有快,准,精才能发挥其价值。以学校管理信息系统建设中的教学管理子系统的开发为背景来开发学生成绩管理系统以减轻学院教学人员的工作量,缩小开支,提高工作效率与准确率,能够让老师合理安排时间

15、,能够尽快知道学生的考试成绩,为下一阶段的教学做准备。1.2 本课题的研究意义建立学生成绩管理系统,采用计算机对学生信息进行管理,进一步提高办学效益和现代化水平。帮助广大教师提高工作效率,实现学生成绩管理工作流程的系统化、规范化和自动化。本论文就是为了实现这些想法而设计的。其研究意义有以下几点:(1) 学生查询个人信息功能,方便学生了解个人成绩;(2) 教师在本系统中拥有添加,修改,删除自己学生的成绩的功能;(3) 后台管理系统能够方便的管理学生、教师、课题、班级等信息,提供了完善的管理服务。 总之,本课题的研究为高校提高工作效率,实现学生成绩管理工作流程的系统化、规范化和自动化成为了可能。并

16、且提供了实现方法。1.3 系统概述高校的招生规模不断的扩大,在校大学生的人数不断上升,在办公化日益完善的今天,很多高校将自动化引入到学生的日常管理之中,学生成绩管理系统就是其中的一个重要环节,它作为学生信息管理的基础,是实现校园信息化进程当中很重要的一个方面。 其开发主要包括前端应用程序的开发以及后台数据库的建立和维护两个方面。本系统分析了现今学生成绩管理系统中所应用的几个环节,并针对每个环节做出了详细的阐述和探讨。学生成绩管理系统需要完成3个的内容:学生档案资料的管理、学生必修课成绩的管理、和学生选修课的管理。三个方面的内容均提供添加、修改、查询的功能。另外系统还有完成选修课选报功能,即学生

17、通过系统选报课程,老师通过批复学生的选报请求。开发用到的相关技术有Java编程语言、引入MVC设计模式理念,以及后台数据库MySQL的搭建与操作,并对模块的功能进行了具体分析和详细设计。第二章 系统需求分析2.1 系统需求成绩管理成为学校教学管理中十分重要又相当复杂的管理工作之一,单纯的采用传统的手工处理已经不符合教育和管理的要求,而计算机具有运算速度快,处理能力强等特点,很自然地进入到这一应用领域中。因此为了保证学校的信息流畅,工作高效,有必要设计一个学生成绩管理系统。这不但能使教务人员从复杂的成绩管理中解脱出来,而且对于推动教学的发展也起到非常重要的作用。学校学生成绩管理工作都是采用传统的

18、手工管理,这个传统人工的管理方式存在着许多缺点,如:效率低,保密性差,一方面导致教师,学生成绩情况不了解,教师对成绩管理工作倍感头痛,因为时间一长,将产生大量的文件和数据,这对于查找,更新和维护都带来了不少的困难,耗费大量劳动力,难于避免错误的产生。选择MyEclipse来开发学生成绩管理系统,由于以上的优点,帮助广大教师提高工作效率,实现学生成绩信息管理工作流程的系统化、规范化和自动化,所以选择MyEclipse来开发学生成绩管理系统。需求的收集及分析:学生成绩管理系统应该完成以下两个方面的内容:学生档案资料的管理、学生成绩的管理(包括必修课和选修课),每个内容均需要提供添加、修改和查询的功

19、能。学生成绩管理系统在开发过程中收集到的客户需求文档记录的关键部分可概括为以下几个部分:1、可能会使用到该系统的用户:系统管理员、教师、学生;2、各类用户的权限不一样。例如系统管理员可以添加、修改、查询学生档案资料和学生的成绩,学生只能查询自己的档案、成绩以及一些公共的信息,教师可以发布学生的成绩信息,而且只能查询自己所授课程的信息以及一些公共信息。3、要有系统备份功能,系统出故障时,因该有相应的应急措施或者系统恢复功能。由此可见,学生成绩管理系统需要满足3个方面的需求:管理员使用系统对全部数据进行维护操作;教师对于自己相关的部分数据实体进行操作;学生作为查询者对数据实体进行查询操作。现在的学

20、生成绩管理系统基本上能做到这几个方面的要求,但多数系统在功能上依然存在缺陷和不足,尤其是在用户界面的友好性以及查询结果的可视化方面存在着很大的问题。2.2 功能需求系统功能需求:我们的系统需要实现的功能主要包括以下几个方面:设计不同用户的操作权限和登录方法;管理员可以添加、修改和查询学生的档案记录,同时可以添加、修改和查询学生的成绩记录,有对学生成绩信息开放度的管理权;管理员对学生的档案和成绩进行审查,生成学生的档案记录报表和学生成绩报表;教师可以查询所授课程的学生信息,可以录入并查询所授课程的成绩;学生有查询个人档案信息和成绩信息的权利;用户界面的直观性和成绩查询结果的可视化。在查询结果的可

21、视化方面,主要是针对当前众多的成绩管理系统的“通病”,我们所涉及的利于查询用户的一项新功能,除了带来便捷性之外,在数据的统计分析等方面也有很大的帮助。满足上述要求的系统应该包括以下几个模块:基本数据维护功能;数据库管理功能;基本业务功能。2.3 数据需求通过调查,总结出用户对数据的需求如下: (1)学生信息 包括:学号、学生姓名、性别、出生日期、所在学院、专业、班级等。 (2)课程信息 包括:课程编号、课程名称、所属专业等。 (3)选课信息 包括:学生姓名、课程名称、开课时间、成绩等。一、基本数据维护功能1、添加学生的档案信息。2、修改学生的档案信息。3、删除学生的档案信息。4、添加学生的成绩

22、信息。5、修改学生的成绩信息。6、删除学生的成绩信息。7、查询结果的可视化管理。描述如图 2-1:基本数据的维护功能添加学生的档案信息修改学生的档案信息删除学生的档案信息删除学生的成绩信息修改学生的成绩信息添加学生的成绩信息查询结果的可视化管理图2-1基本数据维护功能图二、数据库管理功能1、档案和成绩信息管理。2、帐户信息管理。3、档案和成绩信息查看管理。三、基本业务功能1、查看档案信息和成绩信息。2、添加成绩信息。由此,学生成绩管理系统的总体用例图设计如下:图2-2 系统总体用例图2.4 性能需求通过分析,系统性能需求如下:1、系统的高速性、稳定性、安全性。2、系统的体系结构能够方便添加功能

23、模块,适应业务、办公的发展。3、系统人机界面友好,易学易用。4、系统维护成本较低。2.5 出错处理需求出错处理的任务是及时有效的避免或纠正错误:1、接受到从另一个系统发来的违反协议格式的消息时要及时拒绝。2、发现系统自己出现错误时要及时提出出错处理需求。第三章 系统分析3.1 可行性分析问题定义阶段必须回答的关键问题是:要解决什么问题。通过调研,系统分析员应该提出关于问题性质、工程目标和工程规模的书面报告,并且需要得到客户对这份报告的确认。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决,并对以后的行动方针提出建议。一般说来,应从经济可行性、技术可行性、运行可行性、法律可

24、行性和开发方案可行性等方面研究可行性。可行性研究需要的时间长短取决于工程的规模,一般说来,可行性研究的成本只占预期的工程中成本的5-10%。(1) 技术可行性目前国内外开发管理信息系统的相关技术已经很成熟,有很多软件由于采用了面向对象的编程技术以及其他比较先进的开发方法,具有很高的可用性。以现有技术来看,数据库系统,尤其是MySQL数据库的开发已经被大多数开发人员所掌握,而Java具有快速、有效、灵活、易懂等很多显著的特点。它能够迅速而又简单地建立用户的图形化窗口。对于数据的查询、添加和修改都很方便实现。学校现有微机及软件系统安全可以实现系统。(2) 经济可行性因为开发时间为两个月,此次设计的

25、系统要求并不高,因此本次的设计可以使用学校现有的微机系统和Java+Jsp+Servlet完成,其基本功能都能够很好的实现,几乎不需要额外开销。旧的学生成绩管理系统效率低、工作量大、处理过程中容易出错,并且将产生大量的文件和数据材料,这对于查询、更新和维护都带来了很多麻烦。而新系统检索速度快、查找方便、可靠性高、存储量大、成本低等。这些优点能够极大地提高学生成绩管理的效率,也是学校的科学化、正规化管理、与世界接轨的重要条件,这将产生巨大的经济效益。(3) 运行可行性民办教育正在迅猛发展,学院从硬件到软件都投入了大量的人力、物力、财力,在教务上,给各个办公室配置了计算机,并能联接到互联网,并且,

26、学院领导对这方面比较重视,在教务上配置了一定数目的能够训练操作计算机的干事,可以快速、方便、高效地使用计算机进行日常工作。学院开展了计算机及其维修专业,可让学生以实践方式对系统进行维护。使此系统在实践上具备了可行性。3.2 业务流程分析下面是学生成绩管理数据库系统设计的业务流程分析,原始的数据是学生的成绩,系统要求统计学生的成绩,并根据成绩统计的结果由奖学金评为评选出获得奖学金的学生,其流程图如下:图3-1 学生成绩管理系统数据流程图3.3 数据流程分析数据流程图(Data Flow Diagram简称DFD)是描述系统逻辑模型的主要工具,通过几个特定的符号,可以综合地反映出信息在系统中的使用

27、、加工处理、传递、存储的整体情况。 数据流程图是系统结构化分析行之有效的工具,它抽象地描述了系统数据处理的情况,但却无法表达每个处理的详细内容,因此还要对数据流程图中出现的数据流和处理等做进一步的补充说明,这就是数据字典和变换逻辑说明。由于本系统的数据模块较多,下面仅以学生成绩管理模块为例来进行编制。 学生成绩管理系统数据流程图(如图3-2所示):P3.2分辨用户是否存在教师学生P核对用户和密码是否匹配P2.2修改数据P1.2权限分配P2.1录入数据D学生成绩记录图3-2 学生成绩管理系统数据流程图3.4 数据字典描述数据字典是关于数据库中数据的描述,即元数据,而不是数据本身。数据本身将存放在

28、物理数据库中,由数据库系统管理。数据字典有助于这些数据的进一步管理和控制,设计人员和数据库管理员在数据库设计、实现和运行阶段控制有关数据提供依据。3.4.1 数据条目系统管理要求=班级表(classes)|教师表(teacher)|课程表(course)|管理表(admin)|学生基本信息表(student)|选修课表(enrol)classes=tea_id+cour_id+room_id+cour_timeteacher=id+name+title+passwordcourse=id+name+mark+prepare+depadmin=id+ name+passwordstudent=p

29、assword+id+sex+department+jiguan+tel+e_mailenrol=stud_id+class_id+Accept+Score3.4.2 数据分析数据结构数据结构反映了数据之见得组合关系。一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或由若干个数据项和数据结构混合组成。数据结构名:student含义说明:是成绩查询系统的主体数据结构,定义了有关学生的信息。组成:password,id,sex,department,jiguan,tel,e_mail数据结构名:teacher含义说明:是成绩查询系统的主体数据结构,定义了有关老师的信息。组成:id,

30、name,title,password数据结构名:classes含义说明:是成绩查询系统的主体数据结构,定义了有关班级的信息。组成:tea_id,cour_id,room_id,cour_time数据结构名:course含义说明:是成绩查询系统的主体数据结构,定义了有关课程的信息。组成:id,name,mark,prepare,dep数据结构名:enrol含义说明:是成绩查询系统的主体数据结构,定义了有关选修课的信息。组成:stud_id,class_id,Accept+Score第四章 系统设计4.1 系统总体结构设计本系统的结构本系统采用B/S架构,所有的业务处理逻辑都在服务器端执行,客户

31、端只有浏览器(IE/FireFox/Netscape等),所有界面呈现/操作都是通过浏览器将数据发送到服务器,由服务器的相应模块进行处理。系统总体设计实现客户/服务器(B/S)模式在产生之初被设计为两层结构模型,一般又称之为以数据库为中心的结构。应用系统的用户界面部分可以放在客户端或服务端,但一般只存放于某一端,不会同时两端都有。两层结构模型将应用的用户界面从服务端移至客户端,有助于减少服务端的处理,从而提高系统的性能。业务逻辑以SQL语句或存贮过程调用的形式表示。SQL语句的网络开销过大,在业务逻辑简单的应用中表现尚可,但对于分布式的业务处理,就会显得有些不足。 为了避开两次结构模型的这些缺

32、点,本系统采用三层模型来实现客户/服务器模式。本系统的三层结构模型以访问WEB数据库为中心,HTTP为传输协议,客户端通过浏览器(Browser)访问WEB服务器和与其相连的后台数据库。其三级结构组成如下图4-1所示:JSP显示页面用户界面层BusinessLayer业务处理层数据支持层Database图4-1 三层结构模型图图中从左到右,分为三个层次:第一层是用户界面层,主要完成客户和后台的交互及最终查询结果的输出功能。在客户端向指定的Web服务器提出服务器请求,Web服务器用HTTP协议把所需文件资料传给用户,客户端接受并显示在WWW浏览器上;第二层业务处理层是功能层,完成客户的应用功能,

33、即Web服务器接受客户请求,并与后台数据库连接,进行申请处理,然后将处理结果返回Web服务器,再传至客户端;第三层数据支持层是数据层。数据库服务器应客户请求独立地进行各种处理。与传统的两层模式相比,三层模式的主要优点为:(1) 好的灵活性和可扩展性。对于环境和应用条件经常变动的情况,只要对应用层实施相应的改变,就能够达到目的;(2) 可共享性。单个应用服务器可以为处于不同平台的客户应用程序提供服务,在很大程度上节省了开发时间和资金投入;(3) 较好的安全性。在这种结构中,客户应用程序不能直接访问数据,应用JSP显示页面BusinessLayerDatabase用户界面层业务处理层数据支持层服务

34、器不仅可控制哪些数据被改变和被访问,而且还可控制数据的改变和访问方式;(4) 增强了企业对象的重复可用性。“企业对象”是指封装了企业逻辑程序代码,能够执行特定功能的对象。随着组件技术的发展,这种可重用的组件模式越来越为软件开发所接受;(5) 三层模式成为真正意义上的“瘦客户端”,从而具备了很高的稳定性、延展性和执行效率;(6) 三层模式可以将服务集中在一起管理,统一服务于客户端,从而具备了良好的容错能力和负载平衡能力。4.2 系统功能模块图学生成绩管理系统管理员学生教师添加记录修改记录查询记录生成报表查询记录选报选修课程添加记录修改记录查询记录生成报表图4-2 系统功能模块图 如上面业务分解图

35、所示,将一个开发的软件学生成绩管理系统分成三个模块, 即管理员模块、学生模块和教师模块。管理员模块:系统管理员使用了系统中的所有权限,这些权限大致可以分为添加、修改、查询记录以及生成报表。学生模块:学生仅仅使用系统的查询功能以及使用系统选报选修课课程。教师模块:教师具备部分管理员的权限,他们能够修改与自己课程相关的数据实体的内容,但除此之外的数据实体则不能被修改。4.3 系统建模学生成绩管理系统用例分析4.3.1 识别参与者在前面的需求分析过程中,明确了系统的3类角色(Actor)及其相关的权限。 系统管理员:系统管理员使用了系统中的所有权限,这些权限大致可以分为添加、修改、查询记录以及生成报

36、表。 学生:学生仅仅使用系统的查询功能以及使用系统选报选修课课程,不具备操作系统中其它功能的权限。 教师:教师具备部分管理员的权限,他们能够修改与自己课程相关的数据实体的内容,但除此之外的数据实体则不能被修改。4.3.2 识别用例根据对需求的进一步分析,可以确定系统中有如下用例存在(1)处理学生档案管理事务(2)处理学生必修课成绩事务(3)处理学生选修课成绩事务(4)成绩查询事务根据需求及分析得到学生成绩管理系统的用例(UseCase)图。首先设计的是整个系统的用例图,如图4-3所示。图4-3系统总体用例图从上面的用例图中可以看出,系统的用户(包括管理员、教师、学生)如果要使用系统的功能的话,

37、必须要通过登陆验证的环节,这是对系统数据的保密性和安全性所采取的措施。系统的总体用例图中的用例功能比较模糊,需要对去进行进一步的细化。下面是对总体用例图的进一步的细化过程。 学生档案管理事务用例的细化。如图4-4所示:从图4-3所示的用例图中可以看出:处理学生档案管理事务的用例包括4个部分的内容:添加学生档案记录、修改学生大档案记录、查询学生档案记录、生成学生档案信息报表,include关系表明了处理学生档案管理事务用例对后面4部分内容的包含关系。用例图中的extend关系出现在子用例“查询学生档案信息”和“生成学生档案信息报表”之间。extend关系表示“查询学生档案信息”用例可以延伸到“生

38、成学生档案信息报表”用例。图4-4 学生档案管理事务用例图 处理学生必修课成绩事务用例的细化。如图4-5所示:图4-5 处理学生必修课成绩事务用例图 处理学生选修课成绩事务用例的细化。如图4-6所示:图4-6 处理学生选修课成绩事务用例图 成绩查询事务用例的细化。如图4-7所示:图4-7 成绩查询事务用例图图4-8 学生成绩管理系统用户登录时序图第五章 详细设计5.1 数据库设计本系统采用MySQL来设计数据库。MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放

39、源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。由于考虑到本系统是应用在单机系统上,根据学校人员规模建立起一个数据库,在此数据库基础上建立起如下基本表:1、班级表(classes):班级编号(id)、教师编号(tea_id)、课程号(cour_id)、班级位置(room_id)、课程时间安排(cour_time)2、管理员表(admin):管理员编号(id)、管理员姓名(name)、密码(password)3、教师表(teacher):教师编号(id)、姓名(name)、所授课程(title)、密码(password)4、课程表(course):课程编号(

40、id)、课程名(name)、学分(mark)、是否选修(prepare)、系名(dep)5、学生信息表(student):学生姓名(name)、学生用户密码(password)、学生编号(id)性别(sex)、所在系(department)、籍贯(jiguan)、联系电话(tel)、电子邮箱(e_mail)6、选修课程表(enrol):选修课程编号(stud_id)、班级号(class_id)、是否选修(accept)、学分(score)5.2 数据库的结构设计管理员用户表,用来存储登录用户的账号、密码和权限如表5.1所示:表5.1管理员表(admin)学生用户表,用来存储学生的一些信息如表5

41、.2所示:表5.2 学生表(student)教师用户表,用来存储教师的一些信息如表5.3所示:表5.3教师表(teacher)课程信息表,用来存储课程信息如表5.4所示:表5.4 课程信息表表(course)选修课程表,用来存储学生要选择题目的信息如表5.5所示:表5.5 选修课程表(enrol)班级表,用来存储学校里班级信息如表5.6所示:表5.6 班级表(classesi)说明:(1) 学号是以学生入校的年的后两位、月份两位、系部代码两位、专业代码两位和编号共10位组成(2) 教师编号是以所在的专业两位和编号两位共四位组成5.3 数据库逻辑结构设计系统管理员数据表:字段号数据类型长度idv

42、archar10Namevarchar10passwordvarchar10班级信息数据表:字段号数据类型长度Idvarchar50Tea_idvarchar10Cour_idchar50Room_idvarchar10Cour_timechar10选修课选信息数据表:字段名数据类型长度Stu_idvarchar50Class_idvarchar50Acceptboolean1scorevarchar50学生档案信息数据表:字段名数据类型长度Idvarchar50namePassword10jiguanvarchar50departmentvarchar10sexvarchar10telvar

43、char11e_mailvarchar50教师信息数据表字段名类型长度Idvarchar10Namevarchar50titlevarchar50passwordvarchar50用户界面可分为以下4个模块:登录模块:登录界面、登录失败界面。学生模块:主界面、选修课程、查看学分、修改个人信息。教师模块:挑选学生、打分、公布成绩。管理员模块:学生管理、教师管理、课程管理、班级管理。5.4 数据库的连接在整个学生成绩查询系统中,数据库的打开在系统中是很重要的,本系统使用连接池连接数据库,使用配置文件“配置.ini”实现连接数据库的功能如:driver=com.mysql.jdbc.Driversq

44、lserver.url=jdbc:mysql:/127.0.0.1:3306/samssqlserver.user=rootsqlserver.password=123456sqlserver.maxconn=305.5 学生成绩管理系统的登录页面毕业设计管理系统分为三种登录模式(1) 管理员登录(2) 教师登录(3) 学生登录5.6 学生成绩管理系统安全性系统是用JSP网页编程+JavaBean+Servelt+MySQL数据库+SQL查询语句,学生成绩管理系统中拥有的用户名和密码正确才能正常进入学生成绩管理系统,系统安全设计的判断页面为errorpage.jsp。如果用户名和密码正确,则转

45、向相应的页面,若用户名和密码错误,则转向errorpage.jsp。若是学生登录,以下是给出整个文件的部分代码提供参考:public class login_confirm extends HttpServlet public String codeString(String s)trybyte b=s.getBytes(ISO-8859-1);s=new String(b);catch(Exception e)System.out.print(e);return s;public void doPost(HttpServletRequest req, HttpServletResponse

46、res)throws ServletException, IOException String message = null;String id = null;id = codeString(req.getParameter(name);HttpSession session = req.getSession(true);session.setAttribute(id, String.valueOf(id);String password = null;password = req.getParameter(password);String kind = null;kind = req.get

47、Parameter(kind);System.out.println(kind: + kind);String temp = getPassword(req, res, id, kind);if(temp=null)elsetemp=temp.trim();if (password.equals(temp)goo(req, res, kind);else message = 用户名或密码有误!;doError(req, res, message);public void goo(HttpServletRequest req, HttpServletResponse res, String ki

48、nd)throws ServletException, IOException if (kind.equals(student) RequestDispatcher rd = req.getRequestDispatcher(student.jsp);rd.forward(req, res);if (kind.equals(teacher) RequestDispatcher rd = req.getRequestDispatcher(teacher.jsp);rd.forward(req, res);if (kind.equals(admin) RequestDispatcher rd =

49、req.getRequestDispatcher(admin.jsp);rd.forward(req, res);public String getPassword(HttpServletRequest req, HttpServletResponse res,String id, String kind) throws ServletException, IOException sqlBean db = new sqlBean();String pw = ;String sql = select password from + kind + where name= + id+ ;System

50、.out.println(sql:+sql);try ResultSet rs = db.executeQuery(sql);pw=db.getPassword(); catch (Exception e) System.out.print(e.toString();e.printStackTrace();return pw;public void doError(HttpServletRequest req, HttpServletResponse res,String str) throws ServletException, IOException req.setAttribute(pr

51、oblem, str);RequestDispatcher rd = getServletContext().getRequestDispatcher(/errorpage.jsp);rd.forward(req, res);public void doGet(HttpServletRequest req, HttpServletResponse res)throws ServletException, IOException String action = action = req.getParameter(action);if (logout.equalsIgnoreCase(action

52、) HttpSession session = req.getSession(true);session.invalidate();RequestDispatcher rd = getServletContext().getRequestDispatcher(/login.jsp);rd.forward(req, res);第六章 常见问题及解决方法6.1 关于乱码问题1、数据库写入乱码:MySQL数据存储数据乱码以及前台显示乱码:MySQL数据库默认的数据存储类型编码是gbk格式的。当我们从数据库中读取数据的时候往往在前台界面上显示的是?出现乱码现象。这是因为我们所编制的jsp文件所使用的编

53、码格式是:gb2312的,所以出现了不兼容现象。为了解决这个问题在jsp的整体页面中加了个这个属性: pageEncoding=”gbk”这样基本上就解决了这个问题了。还有一种方法就是在建设数据的时候就将所建数据库的编码格式改为gbk。然后在编程和绘制前台界面完成要保存的时候就将java文件和jsp文件的编码格式也保存成gbk的。这样以后也不会出现乱码问题了。总之就是数据库的编码格式要和jsp文件的编码格式一样就对了。2、传值的乱码public String handleString(String s)trybyte bb = s.getBytes(“iso-8859-1”);s = new

54、String(bb);catch(Exception e)return s;把传过来的值使用如上方法重新编码。6.2 关于非法登录问题为了实现用户不登陆就不能非法进入其相应的操作界面这个功能。使用一个名为拦截器(filter)的接口类。编写了一个java文件用于拦截非法登陆。如果用户不登陆就想直接进入操作界面,拦截器就会迫使登陆者转向登陆页面登陆。这样用户要是不登陆就不能进入这个操作界面了。第 26 页 结束语经过这几个月的努力,终于完成了本系统的设计及实现工作。通过学生成绩管理系统的完成和亲身实践,对专业知识有了深入的学习,把学过的知识融会贯通,又学到了以前没有学到的知识,培养了我独立思考问

55、题的能力。这既丰富了我们的知识,又拓宽了我们的视野,为我们以后进入社会、参加工作架起了一座桥梁。在本系统的开发过程中,由于本人在知识、经验方面都存在着不足。另外,在整个开发的过程中,时间也比较仓促。因此,该系统必然会存在一些缺陷和不足。因为对学生成绩管理的整个流程不够熟悉,在需求分析时未能做到完全满足用户的需求。只要学习就会有更多的问题,有更多的难点,但也会有收获。本系统分为管理员用户、教师用户和学生用户,如果你是学生用户,那只能进行查询,对数据没有修改权力。只能进行查询,里面有各个方面的,如学生成绩查询,查看补考情况等。各个界面都简单明了,只要输入你所需要的条件,系统自动调出数据。管理员登录

56、系统,输入管理员用户及密码,跟据数据库的用户表比较。如果通过则能进行学生、教师信息的修改、添加和删除。教师登录系统,输入教师用户及密码,跟据数据库的用户表比较。如果通过则能进行录入成绩、查询成绩、查看补考信息、修改成绩等管理。而且从该实例中我们可以看到MVC结构可以使程序更具有对象化特性,也更容易维护。在MVC模式中,“视图”、“模型”和“控制器”之间是松耦合结构,便于系统的维护和扩展。参考文献 1 王强 贾素玲 郑晋梅 姚琪琳. HTML设计.第一版.北京市西城区德外大街4号.高等教育出版社.2005年4月.113页137页 2 戴志诚. SQL Server 2005 数据库系统开发与实例

57、.第一版.北京智力达有限公司 北京中新伟业印刷有限公司.电子工业出版社.2007年3月.82页118页 3 耿祥义 张跃平. JSP实用教程.第二版.北京清华大学学研大厦A座.清华大学出版社.2007年10月.72页180页 4 耿祥义 张跃平. Java基础教程(第2版)实验练习与提高. 第二版.北京清华大学学研大厦A座.清华大学出版社.2007年5月.129页154页 5 葛洪央. Dreamweaver 8网页设计.第一版.南阳市七一路193号.大象出版社.61页205页 6 沈林兴 张淑平程序员教程清华大学出版社 2006-6 7 刘云生数据库系统概论话中理工大学出版社 1996-5

58、8 雍俊海 JAVA程序设计清华大学出版社 2004-8 9 汤光明 韦大伟 信息系统设计与分析解放军出版社 2005-5致 谢首先对我的指导老师张哲老师、马琦老师、吕后坤老师的指导与关怀表示衷心的感谢,他们严谨的教学态度、渊博的理论知识、脚踏实地和精益求精的工作作风给我留下了深刻的印象,永远是我学习的榜样。在整个毕业设计过程中,他们从整体上给我们把舵,给了我们很多督促和教导,并指出了软件开发过程中所应避免的许多问题,有了问题能够及时和他们沟通,给了我很大的帮助。系统的整体设计与分析方面,他们有着深刻的教导,在数据库的设计方面,他们也给了我很大的帮助,使我少走了很多弯路。我所取得的每一点进步都是同老师的指导和关怀分不开,他们的悉心教诲和无微不至的关怀将令我终身难忘。在学生成绩管理系统设计的过程中,和我在一起的几位同学给了我很大的支持和帮助,在此对他们表示最真挚的感谢,最后深深感谢含辛茹苦养育我成长的父母,他们无私的爱和付出为我创造了一个良好的学习环境。最后我要向所有帮助过我的老师、同学及朋友们道一声感谢!

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!