1、本科毕业论文(20 届)基于 B/S 模型的学生作业管理系统的设计与实现学生模块所在学院专业班级 计算机科学与技术学生姓名指导教师完成日期摘要通过对网络的了解,已经有不少高等学校推出了自己的作业上传系统,学生根据老师的安排提交作业,老师对学生的作业进行批阅和管理。大都是通过Email 完成,作业管理比较混乱,而且存在很多缺陷。例如:查询不全面、容易导致系统不稳定,数据库缺乏管理,数据缺乏更新,而且容易丢失。由于这些缺点造成用户对系统不信任,于是又回到传统的“拷贝、粘贴”方式,系统就荒废了。开发学生作业管理系统的目的是有效地解决作业管理混乱局面。此系统是基于 B/S 模式运用 JSP 技术构建一
2、个网上作业提交和批改系统的过程,教师可以在线布置作业和对已布置作业列表有效管理。教师可以在线对学生作业进行批阅和下载管理,大大提高作业管理效率。学生可以在线提交作业,查看作业状态,查看教师评语。关键词:学生作业管理系统,JSP 技术,B/S 模式。AbstractThrough the network to understand, there have been many universities have introduced operating upload system, students submit work according to the arrangement of the t
3、eacher, teacher to students marking job and management. Mostly by e-mail, operation management is chaotic, but there are many defects. For example: query is not comprehensive, easily lead to system instability, lack of management, lack of database, data update, and easy to lose. Due to these disadva
4、ntages caused by user distrust of the system, and went back to the traditional “copy, paste“ method, system was ruined.The development of student job management system is designed to effectively solve the job management confusion. This system is in the process of B/S model to construct an online ass
5、ignment submission and correction system uses based on JSP technology, teachers can online homework and have effective layout management job list. Teachers can online reviews and download management of student work, greatly improve the working efficiency of management. Students can submit homework o
6、nline, to view the status of the job, see the teacher comments.Keywords: JSP technology, student job management system, B/S model目录1.绪论 .11.1 课题背景 .11.2 课题研究的依据和意义 .11.3 国内外概况 .11.4 课题的主要研究工作 .22. 实现技术 .22.1 基于 B/S 模式的开发架构 .22.2 JSP 技术 .32.3 过滤器 .32.4 MVC 设计模式 .42.5 MYECLIPSE 企业级工作平台 .42.6 MYSQL 数据库
7、 .43.需求分析 .43.1 系统的总体需求 .53.2 学生模块客户端实现的功能 .53.3 性能需求分析 .64.系统设计与实现 .64.1 学生模块分析 .64.1.1 学生登录及修改个人资料 .64.1.2 学生功能需求 .74.2 数据库设计 .74.3 系统实现 .94.3.1 整个系统结构 .94.3.2 详细设计 .95.总 结 .16参 考 文 献 .17致 谢 .1711.绪论飞速发展的信息技术改变着人们的思维方式和学习方式,在这样的背景下,教育也越来越走向网络化、虚拟化、国际化、个性化,人们开始非线性学习,开始在虚拟社区中求生存,在这种信息化环境下,教师的教学方式、学生
8、的学习方式都会发生革命性的变革,计算机辅助教学、网络教学等信息技术与课程整合的方式在学校教学中获得越来越广泛的应用。1.1课题背景互联网的广泛应用也深深影响了教育教学领域,远程教育平台已经慢慢走入人们的生活,但当今的教育模式还是以传统教育模式为主,教室广泛使用多媒体教程。现在的作业提交和批改还是传统模式,教师布置下作业,学生做在作业本上,然后再交给老师,教师批改以后发还给学生,步骤繁琐,效率低。网络化教育提供了教育改革的一个新的发展方向,已经成为现代教育的一个特征,并对教育的发展形成新的推动力。通过Internet/Intranet 来实现网上作业提交,是现代教育的一个具体实现,具有很重要的现
9、实意义。学生作业管理系统可以实现学生在线提交作业的无纸化管理,可以有效利用校园网的软硬件资源,使其发挥最大效力,更好的为学校的教学、科研、管理服务。1.2课题研究的依据和意义随着互联网迅速发展,人们在任何时间任何地点都可以轻松获取所需要的信息,同时互联网的发展极大推动了教育事业的发展,特别是 JSP 技术,它具有极强的扩展能力和良好的伸缩性,将动态页面与静态页面良好分离,并提供了良好的数据库访问能力,大大提高了互联网的应用范围,互联网的广泛应用也深深影响教育教学领域。本文所介绍的基于 B/S 模型的学生作业管理系统是基于开放的 JSP 应用技术开发设计的,其主要特性是能动态、实时的完成学生作业
10、的提交与批改,且具有高效的交互性,更有效的处理客户请求,易于维护和更新。1.3国内外概况自上世纪 90 年代,在线作业系统在国外迅速的发展,出现了较多综合的,跨学科的在线作业系统。例如:美国北卡罗来纳州州立大学物理系开发的 WebAssign,自 1997 年建成至今,已有 250 所大学和学院,150 所 gaoz 使用 WebAssign,2002 年至 2003 年,每学期有超过 90,000 的学生登录 WebAssign,有超过 9 百万份的提交作业。 2001 年,教育部颁布的基础教育课程改革纲要(试行) 指出:“要大力推进信息技术在教学过程中的普遍应用,促进信息技术与学科课程的整
11、合,逐步实现教学内容的呈现方式、学生的学习方式、教师的教学方式和师生互动方式的变革,充分发挥信息技术的优势,为学生的学习和发展提供丰富多彩的教育环境和有力的学习工具。近年来,我国基于网络的在线作业系统的发展也非常迅速,如下所示:2表 1.1 在线作业管理系统发展史主要体现形式 主要优点 主要不足第一阶段 E-mail 或 Ftp比以往的邮寄形式快捷、方便。教师评价作业工作量比较大、归类整理比较麻烦,师生间交互比较差。第二阶段基于某门网络课程的在线作业管理系统专门的提交功能与评价功能能使师生的评价、提交作业活动更直观,并提高了交互水平。教师需要自己或请专业人士专门开发系统,加大教师负担,在线作业
12、管理系统的通用性被忽略,容易造成重复开发和资源浪费。第三阶段较通用的、支持多学科的在线作业管理系统提高多学科的通用性,功能比较强大,提高了教学交互、减轻了教师负担。目前在我国的发展虽然有此趋势,但并不成熟、实际使用效果有限。现阶段,我国的大多数在线作业系统还是停留在第二阶段,一般都以作业模块的形式嵌在网络教学平台中,大都具有教师统计成绩、学生上查看成绩等功能。通过对比国内外的在线作业管理系统可以看出,国外设计的系统比较成熟,而且国内还处于探索阶段,特别是在线作业系统的通用性、功能及完善的评价体系方面,需要进一步的改善和提高。目前,湖南工程学院享受到网络互动教学的便利,学生下课后能在网上获得教学
13、课件、视频音频教学辅助材料,使用数字图书馆系统,交作业和老师批改作业,都能直接在网上完成。1.4课题的主要研究工作本设计实现一个基于 B/S 模型的学生作业管理系统学生模块,完成学生的登录,作业的浏览、下载与上传。本软件利用了 JSP 技术、多线程技术,采用 B/S 架构构建,B/S 结构简化了客户机的工作,客户机上只需配置少量的客户端软件即可。但是服务器将担负更多的工作,对数据库的访问和应用程序的执行都将在服务器上完成。即当浏览器发出请求后,其数据请求、加工、返回结果以及动态网页生成等工作全部由 Web 服务器完成。2. 实现技术2.1 基于 B/S模式的开发架构B/S 模式,即 Brows
14、er/Server(浏览器/服务器)模式,是随着 Internet 技术的兴起,对 C/S 模式的一种变化或者改进的结构。B/S 模式主要利用了不断成熟的 WWW 浏览器技术,结合浏览器的多种 Script 语言(VBScript、 javascript、)和 ActiveX 技术,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大的功能。与 C/S 模式相比,它3大大简化了客户端,客户端只要装上操作系统、网络协议软件以及浏览器即可。在现代的开发平台中已经大量的使用了 B/S 开发模式,不管是使用何种动态 Web 实现手段,其操作形式都是一样的,核心操作的大部分都是围绕着数据库进行的。但是
15、如果直接使用编程语言进行数据库的开发则程序员要处理许多诸如事务、安全等操作,所以现在的开发往往都会通过中间件进行过渡,即程序运行在中间件上,并且通过中间件进行数据库的操作,而具体一些相关的处理,如事务、安全等完全由中间件负责,这样程序员只需要负责具体功能的开发即可,此种模式如图 2.1 所示。 图 2.1 B/S模式开发架构2.2 JSP技术JSP是Java Server Pages的缩写,是由Sun公司倡导、众多业界领先的公司参与制定的一种动态交互式网页技术标准,它为创建动态内容的Web页面提供了简单便捷的实现方法。JSP一经问世便得到了广大网站建设者的喜爱与追捧,很快在网站开发与设计领域普
16、及开来。Sun公司推出的这种新型的网络开发语言之所以会在交互网页上具有无可比拟的优势,是因为它具有以下几个方面的特点:1、JSP 的语法基本上和 Java是相同的,有Java基础的读者可以很方便的使用JSP,没有Java语言基础的读者也一样可以成为 JSP编程的高手。2、JSP 直接内嵌在 HTML中,非常简单易用,大大降低了程序设计开发的难度。3、JSP 程序中可以直接嵌入Java 代码,也可以直接运用Java所提供的各类包,这样就大大加强了JSP程序本身的功能。4、JSP 程序在被请求执行时,服务器端相关软件产生Servlet的执行文件,存储于服务器内存中,并将结果返回到客户端,JDBC提
17、供了与数据库产品无关的数据库连接方式,因此JSP程序与客户端系统无关,可以非常方便地跨平台使用。2.3 过滤器Filter是在Servlet 2.3之后增加的新功能,当需要限制用户访问某些资源或者在处理请开发平台中间件数据库操作系统Java EETomcatMySQL MySQL Windows4求时提前处理某些资源时,即可使用过滤器完成。过滤器是以一种组建形式绑定到Web 应用程序当中的,与其他 Web应用程序组件不同的是,过滤器是采用“ 链”的方式进行处理的。如图 2.2所示。图 2.2 过滤器的操作原理2.4 MVC 设计模式MVC设计模式都是以Servlet为主题展开的,由Servle
18、t接收所有的客户端请求,然后根据请求调用相应的JavaBean,并将所有的显示结果交给JSP完成。它强制性地使应用程序的输入、处理和输出分开。MVC设计模式被分为3个核心层,即模型层、显示层和控制层。它们各自处理自己的任务,各层的任务如下。 1、显示层(View):主要负责接收 Servlet 传递的内容,并且调用 JavaBean,将内容显示给用户。2、控制层(Controller):主要负责所有的用户请求参数,判断请求是否合法,根据请求的类型调用 JavaBean 执行操作并将最终的处理结果交由显示层进行显示。3、模型层(Model):完成一个独立的业务操作组件,一般都是以 JavaBea
19、n 的形式进行定义的。2.5 MyEclipse 企业级工作平台 MyEclipse 企业级工作平台(MyEclipse Enterprise Workbench)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS ,Javascript,Spring,SQL,Hibernate。MyEclipse是一个十分优秀的用于开发Java ,J2EE的Eclipse插件集合 ,MyEclipse 的功
20、能非常强大,支持也十分广泛,尤其支持各种开源产品。在MyEclipse中支持Ajax、HTML、JSP、EJB、Servlet等开发,同时也支持 Tomcat、JBoss 等服务器的快速配置。2.6 MySQL 数据库 MySQL由瑞典MySQL AB公司开发,目前属于Oracle公司。MySQL 是一个关联型数据库管理系统,关联数据库将数据保存在不同的表中而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。目前MySQL被广泛地应用在Internet上的中小型网站中,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中客户端过滤器过滤器过滤器Web 资源5小型网
21、站为了降低网站总体拥有成本而选择了MySQL作为网站的数据库。MySQL是一种自由软件,非常适合中小企业和个人应用的需求。它是一个基于client /server体系结构真正的多用户,多线程的SQL数据库服务器端软件。3.需求分析3.1系统的总体需求本系统的最终用户只有管理员、教师和学生。不同的人根据选择自己的角色通过账号和密码进行登录验证进入系统,执行相应的功能,如果是首次登录系统可以进行注册。管理员主要对学生和教师进行管理。教师主要作业管理、课程管理,作业管理包括发布作业,批阅作业。教师对学生作业可以在线下载单个学生作业然后对其评分。对已批阅的学生作业则显示已批阅。学生可以查看自己所选课程
22、的作业,通过上传提交自己的作业。查看作业时,系统自动显示没交作业、已经评阅的作业以及为查看的作业,同时学生可以自己选修课程。如图3.1所示。图 3.1系统的功能模块3.2学生模块客户端实现的功能1学生登录在客户端,学生输入其用户名和密码,然后点击登陆按钮,建立与服务器的连接。通过LoginAction验证登录信息,如果账号或密码错误,则提示账号或密码错误。2学生注册如果是首次登录,需要注册才能进入系统。点击学生注册跳到注册页面,填好信息信息管理提交作业进行选课修改密码信息管理作业管理课程管理修改密码信息管理学生管理教师管理修改密码管理员学 生登录教师6点击注册,建立与服务器的连接,通过RegA
23、ction验证该学生信息是否存在,若存在会出现提示信息。如果没有并且注册成功会有注册成功提示信息。3学生信息管理学生成功登录系统后,可以对自己的信息进行查看和修改。修改信息只能修改电话和邮箱。4学生作业管理学生作业管理是整个系统的核心。点击学生作业管理,查看学生所选修课程的作业,作业的状态分为四种情况:(1)交作业:只要作业没超过提交时间并且没有被老师评阅就可以交作业,如果不是第一次交作业会把之前的作业覆盖。交作业是通过上传文件到Uupload文件下实现的。 (2)已过期:学生未在规定的时间内交作业。(3)未查看:学生在规定的时间内已提交作业,正在等待教师查阅。(4)教师已经对学生的作业进行查
24、看。5. 密码修改学生通过自己的账号、密码、角色、以及旧密码可以修改自己的密码,通过edit_Pass对自己的信息进行验证,信息正确才能修改自己的密码。3.3 性能需求分析 (1)可靠性高,能在由于系统问题或其它原因产生错误后,作出相对应处理,使程序具有较高的容错性能。(2)宜操作性,程序简单易懂,容易上手使用。设计界面是简化界面,模拟学校网站设计规划。 (3)安全性能,设置了过滤器,只能通过登陆成功才能进入系统。直接在地址栏输入页面网址,都不能进入而是跳到登陆界面。(4)模块化设计此软件的功能,不同的模块实现不同的功能,使得软件易于以后的维护与扩展,在以后可以更好的完善本软件的功能,更方便于
25、在工作中的应用。4.系统设计与实现4.1 学生模块分析4.1.1 学生登录及修改个人资料登录页面是整个系统的入口,应当做好安全防范,防止没有经过登录验证而访问此系统。学生登录系统后,可以修改个人的相关资料及密码。表 4.1学生登录及修改个人信息功能需求功能编号 功能名称 功能描述71 登录功能 验证帐号和密码是否匹配,并给出相应的提示信息2 修改个人资料 修改一些基本资料。3 更改密码 需先验证原密码,如正确方可将更改密码。4.1.2 学生功能需求学生登录系统后,拥有选课管理和作业管理(查看自己作业情况、交作业以及查看老师反馈。 ) 。表 4.2学生功能需求功能编号 功能名称 功能描述1 选课
26、管理 查看该学生可以选择的所有课程,进行选择。2 作业管理 1查看自己作业所处的状态。2.交作业.查看老师批阅作业的反馈4.2 数据库设计利用MySQL创建数据库sjms,其中学生模块设计主要有5个表。(1) 学生信息表 sjms_students,目的用于验证学生的身份,其字段如表 4.3。表 4.3学生信息表(sjms_students)列名 值类型 是否可为空 默认值 说明studentID varchar(20) 否 学生 ID(主键)name varchar(20) 否 姓名pwd varchar(20) 否 密码sex varchar(10) 否 性别subject varchar(50) 否 专业college varchar(20) 否 院系phone varchar(20) 是 电话email varchar(50) 是 邮箱role varchar(10) 否 角色(2) 学生选课表 sjms_stucourse,目的用来存放学生选课信息,其字段如表 4.4。