




免费预览已结束,剩余20页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
长春工程学院软件学院毕业实训报告目 录学生选课管理系统1前言11 软件系统的开发背景和商业价值12 系统开发用到的核心技术3第1部分 需求说明51.1角色权限51.2 简要分析5第2部分 数据库设计62.1 系统表设计62.1.1 student表62.1.2 admin表72.1.3 Teacher表72.1.4 classes表72.1.5 source表72.1.6 enrol表82.2 系统数据模型82.3 模块间的调用关系9第3部分 系统实现93.1教师/学生登录功能93.2 教师/学生密码管理功能113.3 学生的信息浏览/查询功能123.3.1 选课信息查询123.3.2 查询学分123.4 教师的信息浏览/修改/删除功能133.4.1 课程信息删除133.4.2 发布成绩133.5修改教师信息143.6添加教师信息153.7删除教师信息15第4部分 系统使用手册154.1运行环境164.1.1 硬件环境164.1.2 软件环境16项目总结16参考资料1822长春工程学院软件学院毕业实训报告学生选课管理系统前言1 软件系统的开发背景和商业价值当今时代是飞速发展的信息时代。在各行各业中离不开信息处. 理,这正是计算机被广泛应用于信息管理系统的环境。计算机的最大好处在于利用它能够进行信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。本系统就是为了管理好选课信息而设计的。学校作为一种信息资源的集散地,学生和课程繁多,包含很多的信息数据的管理,现今,有很多的学校都是初步开始使用,甚至尚未使用计算机进行信息管理。根据调查得知,他们以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于选课情况的统计和查询等往往采用对课程的人工检查进行,对学生的选课权限、以及选课代号等用人工计算、手抄进行。数据信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统,规范的信息管理手段。尽管学校都有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是管理信息系统的开发的基本环境。数据处理手工操作,工作量大,出错率高,出错后不易更改。学校采取手工方式对学生选课情况进行人工管理,由于信息比较多,选课信息的管理工作混乱而又复杂;一般选课情况是记录在文件上,课程的数目和代号也记录在文件中,学校的工作人员也只是当时对它比较清楚,时间长了,如再要进行查询,就得在众多的资料中翻阅、查找了,造成查询费时、费力。如要对很长时间以前的选课进行更改就更加困难了。基于这些问题,我认为有必要建立一个学生选课系统,使选课管理工作规范化,系统化,程序化,避免选课管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改选课情况。数据库是从60年代初发展起来的计算机技术。经过四十来年的发展,数据库技术己经趋于成熟。Web数据库在新的Internet环境中发生了很大的变化。就数据应用而言呈现出多样化的空间,如数字图书馆、电子出版物、电子商务、远程教育系统等的出现,给web数据库技术提出了更多、更高的要求。同时,随着国内高校校园网的建设,基于互联网的应用系统的开发正在蓬勃发展并发挥着较大的作用。例如,我国许多高校的网上招生系统,学校的各种管理信息系统,学校选课系统,还有一些医学院校开发出的网上诊所、远程诊断系统等等,都是基于校园网的应用系统。国外的教学科研软件与国内相比开发的早而且比较成熟。早在七十年代末,美国就建成了NSFNET(国家科学基金网),其课题的申报及课题的进展情况汇报都在网上进行。其网上教学教务管理系统也十分完善,世界各地的学生可以坐在家里通过互联网完成入学报名、选课、考试、毕业论文、取得学位这一学习生活的全过程。目前,国际上已具规模的远程教育学校就有数百所之多,网上教育正在各地发挥着巨大的作用,为世界各国培养出大批人才。所有这些都表明,基于Internet的校园网的应用已深入到校园内的各个方面。在高等学校的教务管理工作中,课程表的编排是一项十分复杂、棘手的工作。在排课过程中,除了满足大量的制约条件以外,还必须解决许多冲突与矛盾,例如:两位教师不能同一时间在同一班级上课、一位教师不能在同一时间上两门课等等。利用计算机辅助进行课表编排工作,既提高了排课工作的科学性,又可大大减轻管理人员的工作强度,提高工作效率,从而使学校教务管理现代化迈上了一个新台阶。我国不少高校都实行了学分制,它的核心是允许学生自由选课,即把学习的自主权交给学生。在这里,学生选课时的制约因素比较复杂,工作量也很大,而且往往需要在较短的时间内完成。运用计算机辅助选课,即能实时地对大量选课数据进行检验和统计,十分方便地输出选课结果,同时也避免了人工处理时容易产生的错误。从系统开发的复杂程度来看,计算机辅助排课与选课是高校教务系统中的两个关键子系统,目前不少教务系统尚未很好地解决排课与选课问题。本文主要对高校教务管理系统中计算机课表编排与选课子系统的基本功能、设计思想、需求分析以及实现技术进行探讨。大学中,公选课较多,学生可根据自己的专业及兴趣选择公选课程进行学习,本系统将从教学部门的要求出发,实现公选课的选择、查询与统计。2 系统开发用到的核心技术(1)JSPJSP( JavaServer Pages )是由Sun公司倡导、许多别的公司参与一起建立的一种新动态网页技术标准,类似其他技术标准,如ASP、PHP或是ColdFusion,等等。在传统的网页HTML文件( *.htm,*.html )中加入Java程序片段( Scriptlet )和JSP标签,构成了JSP网页(*.jsp)。Servlet/JSP Container收到客户端发出的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式响应给客户端。其中程序片段可以是:操作数据库、重新定向网页以及发送 E-Mail 等等,这些都是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,与客户端的浏览器无关,因此,JSP称为Server-SideLanguage。(2)StrutsStruts是Apache 基金会Jakarta 项目组的一个Open Source 项目,它采用MVC模式,能够很好地帮助java 开发者利用J2EE开发Web应用。和其他的java架构一样,Struts 也是面向对象设计,将MVC模式分离显示逻辑和业务逻辑的能力发挥得淋漓尽致。Structs 框架的核心是一个弹性的控制层,基于如 Java Servlets,JavaBeans,ResourceBundles与XML等标准技术,以及 Jakarta Commons 的一些类库。Struts有一组相互协作的类(组件)、Serlvet以及jsp tag lib组成。基于struts构架的web应用程序基本上符合JSP Model2的设计标准,可以说是一个传统 MVC设计模式的一种变化类型。Struts的优点主要集中体现在两个方面:Taglib和页面导航。Taglib是Struts的标记库,灵活动用,能大大提高开发效率。MVC即Model-View-Controller的缩写,是一种常用的设计模式。MVC 减弱了业务逻辑接口和数据接口之间的耦合,以及让视图层更富于变化。Struts 是MVC的一种实现,它将 Servlet和 JSP 标记(属于 J2EE 规范)用作实现的一部分。Struts继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展。Struts的工作原理,如图所示:图 1 struts工作原理图 (3)HibernateHibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。 (4)AjaxAjax全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。Ajax应用可以仅向服务器发送并取回必需的数据,它使用SOAP或其它一些基于XML的web service接口,并在客户端采用JavaScript处理来自服务器的响应。因为在服务器和浏览器之间交换的数据大量减少,结果我们就能看到响应更快的应用。同时很多的处理工作可以在发出请求的客户端机器上完成,所以Web服务器的处理时间也减少了。使用Ajax的最大优点,就是能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。第1部分 需求说明1.1角色权限 管理员可以通过超级用户身份登录,对系统进行全面的管理,对新用户的添加,删除,对信息进行管理。管理员可以对老师及同学的帐户进行管理,老师、学生不同身份的用户进入不同的界面,进行不同的操作。教师可以发布自己本学期所要教的课程,以及对学生成绩进行管理。同学可以通过查询本学期所开设课程进行选择。1.2 简要分析 学生选课系统需要满足来自三方面的需求,这三个方面分别是学生、教师和管理员。学生的需求是查询院系的课程、学生选课情况及学生信息的修改;教师对选课系统学生选课情况进行操作,同时形成学生选课查看确认;选课管理员的功能最为复杂,包括对学生、教师、选课进行管理和统计,及系统状态的查看、维护并生成选课报表。学生可以直接查看选课情况,学生可以根据本人学号和密码登录系统,还可以进行本人学科成绩情况的查询和维护部分个人信息。一般情况下,学生只应该查询和维护本人的选课情况和个人信息,若查询和维护其他学生的选课及成绩查询信息,就要知道其他学生的学号和密码。这些是很难得到的,特别是密码,所以不但满足了学生的要求,还保护了学生的个人隐私。学校工作人员有修改学生选课的权限,所以需对工作人员登陆本模块进行更多的考虑。在此系统中,学校工作人员可以为学生加入选课或是登陆记录,并打印生成相应的报表给用户查看和确认院系管理人员功能的信息量大,数据安全性和保密性要求最高。本功能实现对选课信息、教师信息、总体选课情况信息的查询和统计、工作人员和管理人员信息查看及维护。学校管理员可以浏览、查询、修改、统计选课的基本信息;浏览、查询、统计和修改学生选课的基本信息,浏览、查询、统计学生信息,但不能添加删除和修改学生的信息,这部分功能应该由院系工作人员执行,但是,删除某条学生选课基本信息记录时,应实现对该学生选课的级联删除。并且还应具有生成选课报表,并打印输出的功能。设计不同用户的操作权限和登陆方法对所有用户开放的学生选课查询和个人部分信息维护查看个人情况信息维护学生个人密码根据选课情况对数据库进行操作并生成报表根据选课情况对数据库进行操作并生成报表查询及统计各种信息维选课信息维护工作人员和管理员信息维护学生信息处理信息的完整性。本系统主要实现教师信息管理、学生信息管理、课程信息管理和系信息管理,其中教师信息管理有教师姓名、教师工号、教师职称、教师所属系;学生信息管理有学生姓名、学生学号和学生所在系;课程信息管理有课程名称、学分、上课地点、已选人数、课程性质、开课系、课程人数;系信息管理有系号和系名。(1)学生信息模块完成学生的登陆,然后根据各位同学所在的系不同,调用相应的选课模块。其中学生登录模块的功能是验证登录人员确实是本院的学生,学生启动本系统后,系统提示输入学生学号码和密码,验证后进入主控操作界面。(2)教师信息模块完成教师的登陆,然后根据各位教师所在的系不同,教师所教的课程不同,调用所选的课程.其中教师登陆模块的功能是验证登录人员确实是本院的教师,教师启动本系统后,系统提示输入教师工号和密码,验证后进入主控操作界面。(3)课程信息管理包括必修课程和选修课程,学生必需先登陆才能进行对课程的选课否则不能进入选课系统。(4)系信息管理中学生必需选重所在的系号和系名才能进行选课,否则并不能进行选课。第2部分 数据库设计2.1 系统表设计学生选课系统需要六个表即:学生表(student)、管理员表(admin)、教师表(teacher)、班级表(classes)、课程表(source)、成绩表(enrol)。2.1.1 student表字段名字段类型字段长度是否为空是否为主键描述idInteger10Not-null是Idnamevarchar50Not-null否用户名passwordvarchar50Not-null否密码Jiguanvarchar50null否籍贯depamentvarchar50null否系别sexvarchar50null否性别markvarchar50null否号码telvarchar50null否电话emailvarchar50null否邮箱2.1.2 admin表字段名字段类型字段长度是否为空是否为主键描述idInteger10Not-null是Idnamevarchar50Not-null否用户名passwordvarchar50Not-null否密码2.1.3 Teacher表字段名字段类型字段长度是否为空是否为主键描述idInteger10Not-null是Idnamevarchar50null否姓名Titlevarchar50null否主题Passwordvarchar50null否密码2.1.4 classes表字段名字段类型字段长度是否为空是否为主键描述idInteger10Not-null是Idtea_idvarchar50null否教师号cour_idvarchar50null否课程号room_idvarchar50null否教室号cour_timevarchar50null否时间2.1.5 source表字段名字段类型字段长度是否为空是否为主键描述idInteger10Not-null是Idnamevarchar50null否姓名MarkInt11null否课号preparevarchar50null否学分depvarchar50null否科系2.1.6 enrol表字段名字段类型字段长度是否为空是否为主键描述stu_IdInteger10Not-null是学号class_idvarchar50null否班级号acceptvarchar50null否科系scorevarchar50null否分数2.2 系统数据模型成绩成绩记录号学号课程号学生密码系部班级姓名学号学生登录老师登录管理员登陆数据库图:2.3 模块间的调用关系公共信息浏览模块为教师和学生共用,学生登录模块中,当学生成功登录后,将学生的姓名、学号、密码、学期作为共用信息保存下来,作为密码修改模块、查询选课信息模块、修改选课信息模块使用时的参数。查询选课信息模块中的课程编码、学期、教师姓名信息作为传递参数用于查询教师信息模块、查询选课名单模块、查询课程信息模块、修改选课信息。同样,教师登录模块中,成功登录后将教师名、教师的身份证号、教师姓名作为参数保存下来,传递到密码修改模块、查询已发布课程信息模块、删除课程发布信息模块、修改课程发布信息模块。管理员登录后的修改教师信息、删除教师信息模块中传递的是教师的身份证号信息,参数由用户输入的信息得来;修改学生信息、删除学生信息模块中传递的是学生的学号信息,同样传递的参数由用户输入得来;删除公告信息模块中传递的是信息序号,由输入得来。学生登录密码修改:学号学生登录查询选课信息:学号、学期查询选课信息修改选课信息:专业、学期教师登录密码修改:工作号教师登录查询已发布课程信息:工作号第3部分 系统实现3.1教师/学生登录功能在登录页面对应的地方输入用户名、密码、学号/身份证号,确认后登录。在提交后的Jsp文件中,首先通过学号/身份证号对数据库中的student表进行检索,若检索到的记录集为空,则说明学号/身份证号错误,从而转到相应的出错处理程序,若记录集不为空,再进行姓名判断,若姓名与表中的姓名不相等,进行出错处理,若相等,进而检查密码是否相等,不相等,作出错处理,相等则转入学生/老师登录成功的操作页面,并将姓名,密码,学号/身份证号以session对象保存起来。出错及处理:在该模块中可能发生的错误有学号错误,系统这时会提醒“无此用户,重新输入!”姓名错误,系统提示“姓名错误!”密码错误,系统提示“密码错误”实例截图:登录:图5.1.1 登录学生登录成功:图5.3登录成功3.2 教师/学生密码管理功能密码的管理的前提是用户成功登录,选择密码修改后,按照页面上的提示,在相应的文本框中输入原始密码,新密码(两次),确定后提交。转入执行的Jsp文件后,首先根据传递的学号/身份证号判断原始密码的正误,若错误,转到相应的处理程序,若正确,再判断两次输入的新密码是否相等,若不等,出错;否则,用新密码代替旧密码,更新数据库表student中的“密码”字段。实例截图:图5.2.1密码修改失败:图5.2.2失败3.3 学生的信息浏览/查询功能3.3.1 选课信息查询从登录成功的下拉菜单中选择一个要查询的学期,确定后进入浏览页面。确定提交页面后,学期的信息以及以session对象传递过来的学号信息作为数据库查询的条件,对表selected进行查询,凡是“学期”等于选择的学期,“学号”等于session(xuehao)的记录均为被选记录,每选出一条记录,选择该记录中的“课程编码”字段为参数,对表course进行查询,将查询到的信息以表格的形式在网页中显示出来,即为该生该学期的已选课信息。将学期作为session对象保存起来。程序脚本中用到两重循环,内循环是对表source进行查询,外循环是对表selected进行查询。实例截图:图5.3.1选课信息查询3.3.2 查询学分在登录后的首页的窗口中点击“查看学分”即可看到学生所在专业在这个学期的学分。实例截图:图5.3.2查询学分信息3.4 教师的信息浏览/修改/删除功能3.4.1 课程信息删除在查看以往发布的信息的页面中点击“我要删除”进入删除页面,输入要删除的课程编码以及发布学期,点击删除。输入学期的原因是同一门课课程编码相同,但可能在不同学期都有发布过,所以要输入发布学期是删除信息更加明确。当不小心输入了他人的代课信息作误删除,或该课程信息不存在时,系统会给出相应的警告和出错信息提醒用户。实例截图:3.4.2 发布成绩3.5修改教师信息教师信息的修改由管理员完成,教师无权修改。在管理员登录成功后选择“修改教师信息”即进入教师信息修改页面,输入要修改的教师身份证号后网页列出所要修改的教师的信息,其中不包括教师的身份证号和密码(密码由教师自己修改,管理员只在添加一条新的教师信息时才写入初始密码)。具体的操作是对数据库中的表“teacher”查询,在网页相应的的地方显示所要的信息。列出教师信息后,只要对其中信息进行修改提交即可。实例截图:5.5修改教师信息3.6添加教师信息添加教师信息由管理员完成,在添加页面中输入新教师的信息。具体的操作是对数据表“teacher”进行添加操作,生成新记录。实例截图:5.6.1添加教师信息3.7删除教师信息教师信息的删除也是由管理员完成,选择需要删除的教师进行删除。实例截图:5.7.1删除教师信息第4部分 系统使用手册4.1运行环境4.1.1 硬件环境系统硬件环境(Hardware Environment)运行于计算机硬件之上的驱动计算机及其外围设备实现某种目的的软件系统。本系统硬件环境如下:操作系统:windows XP SP2CUP:Intel Pentium 4 主频 2.4GHz内存: 1G4.1.2 软件环境本系统软件环境(Software Environment)如下:集成开发环境:Eclipse3.2.1+MyEclipse 6.5数据库:MySql5.0服务器:Tomcat 5项目总结我们毕业设计的课题是学生选课系统,以JSP为开发平台。JSP的功能强大,它不仅涉及数据库系系统的知识,还涉及到面向对象等方面的知识。用户可通过JSP+SQL的开发环境方便的设计数据库结构,管理数据库,设计应用界面,设计查询,设计表结构。这次设计充分体现了集体的智慧,每当遇见困难的时候,我都会与其他成员共同想办法把问题解决,同时指导老师给予了我们莫大的鼓励和悉心的指导,当我们遇到困难且又不能进行下去的时候,是他耐心、细致、不厌其烦的讲解才有我们小组今天的成果。所谓“书到用时方恨少”,我很佩服我们的老祖宗很久以前就有了这样的结论。但“万事开头难”,只要你狠下一股劲,持之以恒,你就肯定能有很大的收获。虽然不能说“人有多大胆,地有多大产”,但是我相信只要我们能始终如一地朝着我们的目标前进,总有一天我们会实现我们的愿望!通过毕业设计,我对WEB服务器、数据库软件MySQL、JAVA、JSP、JavaScript等系列知识都有了一定的了解。使用JSP开发页面的能力也有了很大提高。由于在此之前对于JAVA和JSP知识的了解几乎是一片空白,所以从一开始就碰到许多困难。例如一开始我使用的是Access2003数据库服务器,由于性能上与我使用的操作系统Windows XP有很多地方不相
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年线下演出市场演出产业链上下游企业合作模式报告
- 2025年工业互联网平台边缘计算硬件架构与工业控制系统集成创新技术报告
- 2025年教育行业教育培训机构市场调研与消费者行为分析报告
- 2025年电商平台知识产权保护与品牌建设关系报告001
- 活动板房收购合同范本
- 网络推广宣传合同范本
- 运城奥迪购车合同范本
- 采购鞋服贸易合同范本
- 玉米企业供货合同范本
- 郑州房屋销售合同范本
- 公司财务知到智慧树章节测试课后答案2024年秋北京第二外国语学院
- 2025年天马微电子股份有限公司招聘笔试参考题库含答案解析
- 2025年浙江事业单位联考真题解析历年高频重点提升(共500题)附带答案详解
- 防止人身伤亡事故培训课件(共139张)
- 宣传物料技术服务方案设计
- 检验科质量管理手册
- 幼儿园讲解海军知识
- 《中国货币发展史》课件
- 暴聋(突发性耳聋)中医临床路径及入院标准2020版
- 部编高教版2023·职业模块 中职语文 2.《宁夏闽宁镇:昔日干沙滩今日金沙滩》 课件
- 风电安全培训
评论
0/150
提交评论