首页 在线计算机知识竞赛系统毕业论文在线考试系统

在线计算机知识竞赛系统毕业论文在线考试系统

举报
开通vip

在线计算机知识竞赛系统毕业论文在线考试系统在线计算机知识竞赛系统毕业论文在线考试系统 华东交通大学理工学院 本科生毕业设计论文资料袋 题目名称 在线计算机知识竞赛系统 学生姓名 罗冬明 学 号 7 专 业 电子商务 分 院 电信分院 指导教师姓名 李璇 职 称 高级软件工程师 序号 资料名称 袋内有者划? 并写明份数 序号 资料名称 袋内有者划? 并写明份数 1 任务书 7 答辩专家评审表 2 开题报告 8 答辩评分表 3 原创性申明 9 成绩汇总表 4 毕业设计论文 10 图 纸 张 5 指导教师评审表 11 软件或程序 光盘?软盘? ...

在线计算机知识竞赛系统毕业论文在线考试系统
在线计算机知识竞赛系统毕业论文在线考试系统 华东交通大学理工学院 本科生毕业设计论文资料袋 题目名称 在线计算机知识竞赛系统 学生姓名 罗冬明 学 号 7 专 业 电子商务 分 院 电信分院 指导教师姓名 李璇 职 称 高级软件工程师 序号 资料名称 袋内有者划? 并写明份数 序号 资料名称 袋内有者划? 并写明份数 1 任务书 7 答辩专家评审表 2 开题报告 8 答辩评分表 3 原创性申明 9 成绩汇总表 4 毕业设计论文 10 图 纸 张 5 指导教师评审表 11 软件或程序 光盘?软盘? 张 6 评阅人评审表 12 其 它 综合评定成绩 华东交通大学理工学院 Institute of Technology East China Jiaotong University 毕 业 设 计论 文 Graduation Design Thesis 2008 2012 年 题 目 在线计算机知识竞赛系统 分 院 电信分院 专 业 电子商务 班 级 2 学 号 7 学生姓名 罗冬明 指导教师 李璇 起讫日期 2012年1月14日2012年5月10日 华东交通大学理工学院 毕业设计论文原创性申明 本人郑重申明所呈交的毕业设计论文是本人在导师指导下独立进行的研究工作所取得的研究成果设计论文中引用他人的文献数据图件资料均已在设计论文中特别加以标注引用除此之外本设计论文不含任何其他个人或集体已经发表或撰写的成果作品对本文的研究作出重要贡献的个人和集体均已在文中以明确方式表明本人完全意识到本申明的法律后果由本人承担 毕业设计论文作者签名 日期 年 月 日 毕业设计论文版权使用授权书 本毕业设计论文作者完全了解学院有关保留使用毕业设计论文的 规定 关于下班后关闭电源的规定党章中关于入党时间的规定公务员考核规定下载规定办法文件下载宁波关于闷顶的规定 同意学校保留并向国家有关部门或机构送交设计论文的复印件和电子版允许设计论文被查阅和借阅本人授权华东交通大学理工学院可以将本设计论文的全部或部分内容编入有关数据库进行检索可以采用影印缩印或扫描等复制手段保存和汇编毕业设计论文 保密的毕业设计论文在解密后适用本授权书 毕业设计论文作者签名 指导教师签名 签字日期 年 月 日 签字日期 年 月 日 摘 要 在线考试系统旨在实现考试的无纸化管理对一些科目的考试可以通过互联 网络或局域网进行方便校方考务的管理也方便了考生尤其适合考生分布广不易 集中的远程教育我主要开发系统的后台管理系统JAVA在线考试管理子系统它包 括试题管理考生管理在线制作试卷控制学生考试的设置试卷审批等功能本论文 主要介绍了对JAVA在线考试管理子系统的分析设计和开发的全部过程运用ER 图程序流程图等对在线管理子系统的设计过程进行详细的说明web技术的在线 考试系统故而系统主要以j2EE作为开发基础主要使用了strutshibernete等多 种 协议 离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载 或技术用myeclipse作为开发工具以ORACLE作为数据库以Macromedia 公司的Dreamweaver作为界面美化工具基本实现了网上考试系统应有的主要功 能模块包括管理员的登录管理和维护用户注册登录注销个人信息的查询修改考 试管理套题管理成绩管理该系统界面简单操作方便容易维护 关键词在线考试j2EEstruts hibernete Abstract Online examination system to achieve paperless management of examinations the examination of some subjects through the Internet or LAN to facilitate the management of the school Examination candidates are also convenient especially for candidates widely distributed easy to focus on distance education The background of my main development system management system-JAVA-line examination management subsystem which includes questions management candidate management on-line production of papers control of student test set paper processing and other functions This paper introduces online examination management subsystem on the JAVA analysis design and development of the whole process Using ER diagram process flow charts and other on-line management subsystem design process detail The contents of this graduation project is to design and implement a web-based technology online examination system Guer system based mainly j2EE as the development mainly using struts hibernete and other agreements or technology using myeclipse as a development tool to ORACLE as the database to Macromedias Dreamweaver as a landscaping tool interface Basically an online examination system should be the main functional modules including an administrators login management and maintenance user registration login logout personal information access correction test management problem sets of management performance management The system interface is simple to operate easy to maintain Keywords Online Examinationj2EEstruts hibernete 目 录 中文摘要3 英文摘要4 目 录5 引 言6 第1章 系统应用的关键技术7 11 JSP技术介绍7 com JSP的概述7 com JSP的运行机制7 com JSP的强势与劣势8 12 Java组件JavaBeans9 13 J2EE概述9 14关于Struts10 com Struts简介10 com Struts的主要功能10 15 Tomcat服务器10 com Tomcat 服务器简介10 com Tomcat服务器的安装和配置10 第2章 系统需求分析和总体设计12 21 系统功能需求12 22 系统角色的功能13 23 总体设计思想概述13 24 数据库设计15 com E-R图15 com的设计15 25系统的用例图18 com 总体用例分析18 com 用户管理用例分析19 com 考试管理用例分析19 com 考试题目管理用例分析20 com 成绩管理用例分析21 第3章 系统的详细设计22 31 主要模块的设计说明与界面22 com理模块22 com理模块22 com 题目管理模块21 32 系统的测试23 结 语25 参考文献27 附 录28 后 记35 引 言 网络化教育代表了教育改革的一个发展方向已经成为现代教育的一个重要特征并对教育的发展形成新的推动力随着InternetIntranet的迅速发展和广泛普及网络考试系统成为现代教育技术未来发展方向之一作为网络考试的一个子系统网络阅卷子系统也成为一个重要的研究领域现代网络考试作为一种新的考试手段已经开始进入人们的生活正在给传统教育模式带来新的变革并对教育的 发展形成新的推动力网络阅卷子系统突破了传统考试方式的时空限制使阅卷方式更为灵活同时充分利用计算机进行自动阅卷功能大大减轻了教师的工作量目前市面上流行的网上在线考试系统不少但是对于具体的教育部门来说因为具有自己的特殊性因此需要一个功能实用并能满足其对相关数据的管理及需求的系统系统开发的目标就是在于开发一个功能实用简单明了的网上在线考试系统 综合应用大学阶段的课程特别是数据库原理及应用OracleJava程序设计其中数据库原理及应用Oracle是本专业一门重要的专业课数据库是信息系统开发利用和保存的主要形式是信息系统的核心 教育部门在正常运行中总是面对大量的考生信息和考试信息考生考试产生与考试相关的信息因此需要对考生信息教师信息考卷信息进行管理以达到及时了解各个环节中信息的变更提高管理效率 提高自己的调查实践能力在论文的设计及撰写过程中遇到了很多的问题在解决这些问题的同时积累了很多发现和解决问题的经验同时提高了系统开发和设计的能力掌握了程序的设计流程为以后的工作打下了坚实的基础 阶段学校与社会上的各种考试大都采用传统的考试方式在此方式下组织一次考试至少要经过五个步骤即人工出卷考生考试人工阅卷成绩评估和试卷分析显然随着考试类型的不断增加及考试要求的不断提高教师的工作量将会越来越大并且其工作将是一件十分烦琐和非常容易出错的事情可以说传统的考试方式已经不能适应现代考试的需要随着计算机应用的迅猛发展网络应用不断扩大如远程教育和虚拟大学的出现等等且这些应用正逐步深入到千家万户人们迫切要求利用这些技术来进行在线考试以减轻教师的工作负担及提高工作效率与此同时也提高了考试的质量从而使考试更趋于公证客观更加激发学生的学习兴趣例 如目前许多国际著名的计算机公司所举办的各种认证考试绝大部分采用这种方式为了适应新形势的发展我们推出了这一系统使其尽快在各类考试中发挥高效便捷的作用把老师从繁重的工作中解脱出来 JSP文档被复制到Web服务器的文档目录中当有人请求这个文档时服务器识别出这个带有jsp扩展名的文档并意识到需要做特殊处理第一次请求这个文档时它被编译成一个servlet对象并存储在内存中然后输出内容回送给发出请求的用户机第一请求之后只要有请求到来服务器将进行检查看看这个文件是否做过改动如果没有变化服务器调用先前编译过的servlet对象 JSP请求的步骤[2]如图1-1所示 1用户机请求一个JSP页面 2JSP引擎编译该JSP成一个servlet 图1-1 一个JSP的请求步骤 3生成的servlet被编译并装载 4编译的servlet服务请求并把一响应发送回用户机 JSP主要是针对Java程序处理不熟悉的人设计的与Servlet相比JSP有如下两个优势方便与6>HTML混合在开发测试方面比Servlet方便 com JSP的强势与劣势 JSP的强势 1可移植性JSP是用Java开发的因此它是可移植的可以一处编写随处运行支持多平台 2有效性JSP的初始化代码仅在Web服务器第一次加载时执行一次一旦加载在处理一个新的请求时只须调用一个新的服务方法与处理每个请求都要全部加 载一个完整的可执行程序相比这是一个相当有效的技术 3强大的可伸缩性和可扩充性它能够在面向对象的语言 Java 中进行开发并可以在现有对象基础上进行扩展形成新的对象从而更好地满足用户的需求 4多样化和功能强大的开发工具支持Java已经有了许多非常优秀的开发工具而且许多可以免费得到并且其中许多已经可以顺利的运行于多种平台之下 5Java Servlet是一种开发Web应用的理想框架JSP以Servlet技术为基础又在许多方面作了改进利用跨平台的JavaBeans组件JSP为分离处理逻辑与显示样式提供了卓越的解决 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 JSP的劣势 1为了跨平台的功能为了极度的伸缩能力极大的增加了产品的复杂性Java系统中包括JREJDKJ2EEEJB等多种产品这就需要大量的学习和培训才能掌握它们将它们有效地搭配在一起灵活地加以运用 2Java的运行速度快是由于用户将class常驻内存这样使用的内存空间就比较大另一方面它还需要硬盘空间来存coms文件以及对应的版本文件 3JSP只有对Java相当熟悉的人才能用得很好 4JSP程序调试困难 12 Java组件JavaBeans JavaBeans事实上有三层含义首先JavaBeans是一种规范一种在Java包括JSP中使用可重复使用的Java组件的技术规范其次JavaBeans是一个Java的类一般来说这样的Java类将对应于一个独立的java文件在绝大多数情况下这应该是一个public类型的类最后当JavaBeans这样的一个Java类在我们的具体的Java程序中被示例之后我们有时也会将这样的一个JavaBeans的实例称之为 JavaBeans 13 J2EE概述 J2EE Java 2 Platform Enterprise Edition 是使用Java技术开发企业级应用的一种事实上的工业 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 Sun公司出于其自身利益的考虑至今没有将Java及其相关技术纳入标准化组织的体系 它是Java技术不断适应和促进企业级应用过程中的产物目前Java平台有三个版本适用于小型设备和智能卡的J2ME Java 2 Platform Micro Edition 适用于桌面系统的J2SEJava 2 Platform Standard Edition和适用于企业级应用的J2EE Java 2 Platform Enterprise Edition Sun推出J2EE的目的是为了克服传统ClientServer模式的弊病迎合BrowserServer架构的潮流为应用Java技术开发服务器端应用提供一个平台独立的可移植的多用户的安全的和基于标准的企业级平台从而简化企业应用的开发管理和部署J2EE是一个标准而不是一个现成的产品各个平台开发商按照J2EE规范分别开发了不同的J2EE应用服务器J2EE应用服务器是J2EE企业级应用的部署平台由于它们都遵循了J2EE规范因此使用J2EE技术开发的企业级应用可以部署在各种J2EE应用服务器上为了推广并规范化使用J2EE架构企业级应用的体系架构Sun同时给出了一个建议性的J2EE应用设计模型J2EE BlueprintsJ2EE Blueprints提供了实施J2EE企业级应用的体系架构设计模式和相关的代码通过应用J2EE Blueprints所描述的体系模型能够部分简化架构企业级应用这项复杂的工作J2EE Blueprints是开发人员设计和优化J2EE组件的基本原则同时为围绕开发工作进行职能分工给出了指导性策略以帮助应用开发设计人员合理地分配技术资源 14 关于Struts com Struts简介 Struts已逐步越来越多运用于商业软件是一种非常优秀的J2EE MVC实现方式Struts用Java ServletJavaServer Pages技术开发Web应用程序的开放源码的framework com Struts的主要功能 1 包含一个controller servlet能将用户的请求发送到相应的Action对象 2JSP自由tag库并且在controller servlet中提供关联支持帮助开发员创建交互式表单应用 3提供了一系列实用对象XML处理通过Java reflection APIs自动处理JavaBeans属性国际化的提示和消息Struts项目的目标是为创建Java web应用提供一个开放源代frameworkStruts framework的内核是基于例如Java Servlets JavaBeans ResourceBundles 和 XML以及各种 Jakarta Commons包的标准技术的灵活的控制层Struts提供了它自身的控制器组件并整合了其他技术以提供模型和视图Struts已逐步越来越多运用于商业软件是一种非常优秀的J2EE MVC实现方式 15 Tomcat服务器 com Tomcat 服务器简介 Tomcat是一个免费的开源的Serlvet容器它是Apache基金会的Jakarta项目中的一个核心项目由ApacheSun和其它一些公司及个人共同开发而成由于有了Sun的参与和支持最新的Servlet和Jsp规范总能在Tomcat中得到体现 Tomcat中采用了Servlet容器Catalina完整的实现了ServcomTomcat提供了各种平台的版本供下载可以从其官方网站上下载其源代码版或者二进制版由于Java的跨平台特性基于Java的Tomcat也具有跨平台性 com Tomcat服务器的安装和配置 在开始安装之前先准备J2SDK和TOMCAT两个软件如果已经安装了J2SDK就只需TOMCAT即可 1需设置的环境变量 变量名CATALINA_HOME 变量值D\Program Files\tomcat60 变量名CLASSPATH 变量值JAVA_HOME\libCATALINA_HOME\common\lib 2安装完成后打开tomcat服务器启动浏览器在地址栏上输入httplocalhost8080 若出现以下界面说明安装成功 图1-2 tomcat启动页面 第2章 系统需求分析和总体设计 21 系统功能需求 图 2-1 系统前台功能结构图 图2-2 系统后台功能结构图 本课题设计系统主要分为前台和后台两个总分进行设计前台主要用于考生注册在线考试查询成绩找回密码以及修改个人资料等后台主要用于用户对用户信息考生信息考生成绩信息课程信息套题信息试题信息等进行管理 前台管理 实现考生通过网络完成考试功能包括 1 考2 在线考试选择试卷类型 3 查询成绩考完即可查询考试成绩 建立以知识点为基础的动态题库数据主要功能包括 22 系统角色的功能 1 注册用户 使用系统的功能用户必须先注册只要注册为网站用户后获得自己的帐号设置自己的密码就具有以下功能登录登出参加考试提交试卷查询成绩添加或修改个人资料 2 老师 老师可以对试题属性进行设置对用户资料的查看删除等以及对成绩的查询等 3 管理员 管理员可以添加老师科目对试题属性进行设置对用户资料的查看删除等以及对成绩的查询等 23 总体设计思想概述 本系统是基于BS架构下的多层结构应用系统BSBrowserServer结构即浏览器和服务器结构它是随着Internet技术的兴起对CS结构的一种变化或者改进的结构在这种结构下用户工作界面是通过浏览器来实现极少部分事务逻辑在前端Browser实现但是主要事务逻辑在服务器端Server实现形成所谓三层3-tier结构这样就大大简化了用户端电脑载荷减轻了系统维护与升级的成本和工作量降低了用户的总体成本TCO 在软件体系架构设计中分层式结构是最常见也是最重要的一种结构推荐的 分层式结构一般分为三层从下至上分别为数据访问持久层业务逻辑层或称为领域层表示层[16]如图3-2 图2-3 系统架构 总的来说采用分层结构的设计思想可以让每个层由一组相关的类或组件构成共同完成特定的功能层与层之间存在自上而下的依赖关系上层组件会依赖下层组件的API而下层组件则不依赖于上层组件例如表述层依赖于业务逻辑层而业务逻辑层依赖于数据库层并且每个层对对上层公开API但具体的实现细节对外透明当某一层发生变化只要API不变不会影响其他层的实现 在本系统中使用oracle数据库持久层用到spring所集成的Hibernate技术业务逻辑层用普通javabean实现表述层运用基于struts的MVC设计模式struts用来做C层spring实现V层与C层的解耦以及C层与M层的解耦 24 数据库设计 com E-R图 下面是该系统数据库表的E-R图如图2-4 图2-4 E-R图 com的设计 下面列出了设计过程中所用到的数据库表及其结构 1tb_Lesson表用来保存课程的信息如表2-1 tb_Lesson 列名 类型 长度 描述 bigint 8 课程ID Name varchar 60 课程名称 JoinTime datetime 8 加入时间 表2-1 tb_Lesson tb_manager表用来保存管理员信息如表2-2 2tb_manageer 列名 类型 长度 ID bigint 8 管理员ID name varchar 30 管理员名字 PWD varchar 30 管理员密码 表2-2 tb_manageer 3tb_Questions表用来保存考试题目如表2-3 3tb_Questions 列名 类型 长度 id bigint 8 试题ID subject varchar 50 科目名 type char 8 试题类型 joinTime datetime 8 加入时间 lessonId int 4 课程Id taoTiId bigint 8 套题id optionA varchar 50 选项A optionB varchar 50 选项B optionC varchar 50 选项C optionD varchar 50 选项D answer varchar 10 答案 note varchar 50 备注 表2-3 tb_Questions 4tb_TaoTi表用来保存套题信息如表2-4 tb_TaoTi 列名 类型 长度 ID bigint 8 套题id name varchar 50 套题信息 LessonID bigint 8 课程ID JoinTime datetime 8 加入时间 表2-4tb_TaoTi 5 tb_Student表用来保存用户个人资料如表2-5 tb_Student 列名 类型 长度 ID varchar 16 学生ID name varchar 20 学生姓名 pwd varchar 20 登陆密码 Sex varchar 2 学生性别 joinTime datetime 8 注册时间 Question varchar 50 提示问题 answer varchar 50 问题答案 profession varchar 30 专业 cardNo varchar 18 证件号码 表2-5 tb_Student 6(tb_StuResult表用来保存学生考试成绩如表2-6 tb_StuResult 列名 类型 长度 id bigint 8 成绩编号 stuId varchar 16 学生id whichLesson varchar 60 课程ID resSingle int 4 单选题得分 resMore int 4 多选题得分 resTotal int 4 总得分 jointime datetime 8 加入时间 表2-6 tb_StuResult 25系统的用例图 com 总体用例分析 图2-5 总体用例图 如图用户管理考试管理成绩管理题目管理四个模块构成了本网上考试系统使用者是指系统用户包括管理者和考试者用户两种考试者只可以选择课程参加考试查看成绩修改个人资料等管理者通过用后台管理就可以对试题库用户成绩进行管理 com 用户管理用例分析 图2-6 用户管理用例图 如图2-6用户管理模块主要包括用户注册修改资料选择课程在线考试成绩查询五个功能组成 com 考试管理用例分析 图2-7 考试管理用例图 如图2-7考试管理模块主要包括阅读考试规则选择课程准备考试开始考试自动阅卷查看成绩六个功能组成 com 考试题目管理用例分析 图2-8考试题目管理用例图 如图考题管理模块主要包括增加题目删除题目题目分类套题管理答案设置等五个模块组成 com 成绩管理用例分析 图2-9绩查询用例图 如图成绩查询模块主要包括前台考试者的成绩查询后台管理者的成绩查看 第3章 系统的详细设计 31 主要模块的设计说明与界面 com理模块 用户登录 网站首页在用户第一次访问时会判断用户是否登录未登录则显示用户登录窗口提示用户登录或注册对于已经登录的用户在用户登录窗口将显示用户的相关信息 首页主要是根据保存用户名信息的Session参数来判断用户是否已经登录的关键代码如下 String name String sessiongetAttribute "name" 在会员登录窗口中单击登录按纽后系统将对用户名和密码进行验证判断用户是否是已注册用户如果已注册则更新用户在网站中的状态如果没有注册则拒绝用户的登录操作登录数据验证的程序代码如下 考生身份验证 public ActionForward studentLogin ActionMapping mapping ActionForm form HttpServletRequest request HttpServletResponse response StudentForm studentForm StudentForm form int ret studentDAOcheckStudent studentForm Sycomt "验证结果ret的值" ret if ret 2 requestsetAttribute "error" "您输入的考生准考证号码或密 码错误" return mappingfindForward "error" else HttpSession session requestgetSession sessionsetAttribute "student" studentFormgetID return mappingfindForward "studentLoginok" 图 3-1登录页面 图3-2 管理员界面 com理模块 考试管理模块主要功能有如下几个部分 1选择课程模块 当用户在主页登录后点击在线考试系统会自动跳转到examRulejsp页面来阅读考试规则点击同意便可以选择课程 代码如下 htmlform action "managelessondoaction selectLesson" method "post" onsubmit "return checkForm lessonForm " 具体执行步骤 从用户的请求对象中获取Action会话对象 从会话对象中获取考试对象 在监听到Action被创建之后就立即向数据库中添加一个考试请求 在线考试时选择课程 private ActionForward selectLesson ActionMapping mapping ActionForm form HttpServletRequest request HttpServletResponse response HttpSession session requestgetSession String stu sessiongetAttribute "student" toString 获取准 考证号 List list lessonDAOquery stu 查询包括考试题目的课程列表 但不包括已经考过的科目 if listsize 1 return mappingfindForward "noenLesson" else requestsetAttribute "lessonList"list return mappingfindForward "selectLesson" 2准备考试 用户选择了课程之后便可以开始准备考试此时Actionform类会自动在 数据库中创建一个Session对象用来保存此次考试的相关信息同时会输出课程 ID和课程名称确认该考试 执行流程如下 从用户请求对象中获取课程的ID 调用业务层的方法根据课程ID去数据查询课程的信息返回Lesson对象 从课程对象中获取课程名课程ID来构建一个课程的对象 从Session会话中获取用户ID 调用业务层的方法来根据用户ID和课程对象来对数据库执行添加操作 将些该课程的试题对象放入到考试页面中 部分实现代码 htmlbutton property "button" styleClass "btn_grey" value "开始考 试" onclick "windowopener nullwindowclose windowopen startExamdoaction startExamwidth 786height 600scrollbars 1 " 数据库中实现代码 准备考试 private ActionForward ready ActionMapping mapping ActionForm form HttpServletRequest request HttpServletResponse response LessonForm lessonForm LessonForm form Sycomtln "课程ID"lessonFormgetID lessonFormgetName HttpSession session requestgetSession sessionsetAttribute "lessonID"StringvalueOf lessonFormgetID 查询选择的课程ID return mappingfindForward "ready" 3 自动阅卷和显示成绩 在选择了开始考试之后系统会随机在套题表中抽取题目题目分为单选和 多选题两类在用户答题完成并提交之后系统会自动统计单选题的得分和多选题 的得分之后进行加运算查看成绩页面显示最终的得分 功能的执行步骤 将ActionForm转换为ItemForm对象 从ItemForm对象中获取课程ID 从Session会话中获取考试对象 根据课程ID去调用业务层的方法去修改题目得分项 修改合计分数 将些对象项放入到考试结果表单中 部分实现代码 logiciterate id "stuResult" name "stuResultQuery" type "comonFormStuResultForm" scope "request" 在数据库中的实现代码 public class StuResult extends Action private StuResultDAO stuResultDAO null public StuResult thisstuResultDAO new StuResultDAO public ActionForward execute ActionMapping mapping ActionForm form HttpServletRequest request HttpServletResponse response String action requestgetParameter "action" Sycomtln "获取的查询字符串" action if action null ""equals action return mappingfindForward "error" else if "stuResultQuery"equals action return stuResultQuery mapping form request response else if "stuResultQueryS"equals action return stuResultQueryS mapping form request response requestsetAttribute "error" "操作失败" return mappingfindForward "error" private ActionForward stuResultQueryS ActionMapping mapping ActionForm form HttpServletRequest request HttpServletResponse response requestsetAttribute "stuResultQuery" stuResultDAOquery requestgetParameter "ID" toString return mappingfindForward "stuResultQueryS" com 题目管理模块 题目管理模块是用来管理题目信息的模块前面已经讲过在整个考试模块中 学生需要先选择课程然后才能选择该课程下的题目考试 该模块共分四个部分题目分类增加题目删除题目设置答案等基本上该模 块是面向系统管理员的而且该模块大部分的操作都是针对数据库进行的 1增加课程 图3-3增加课程界面 此时管理员可以添加课程的名称点击图中的保存按钮课程就被保存到数据 库中代码如下 script language "javascript" function check form if come "" alert "请输入课程名称" coms return formsubmit 3题目管理 图3-4后台试题修改页面 部分代码实现 script language "javascript" function F_getTaoTi val var loader new netAjaxRequest "questionsdoaction queryTaoTiid "val"nocache "new Date getTime dealonerror"GET" function onerror alert "出错了" function deal h whichTaoTiinnerHTML comonseText function checkForm form if come "" alert "请输入考试题目名称" coms return false 32 系统的测试 测试是软件开发必不可少的环节每个开发者都应该养成良好的测试习惯一个系统的完善就是通过不断地测试与维护来完成的 测试的意义有以下几点[18] 1 测试并不仅仅是为了找出错误通过分析错误产生的原因和错误的发生趋势可以帮助项目管理者发现当前软件开发过程中的缺陷以便及时改进 2 这种分析也能帮助测试人员设计出有针对性的测试方法改善测试的效率和有效性 3 没有发现错误的测试也是有价值的完整的测试是评定软件质量的一种方法 测试一般有两种方法如果已经知道了产品应该具有的功能可以通过测试来检验是否每个功能都能正常使用如果知道产品内部工作过程可以通过测试来检验产品的内部动作是否按照说明书的规定正常运行前一个方法称为黑盒测试后一个称为白盒测试 对于本系统我采取第一个方法即黑盒测试做完一个模块就进行测试看所做的模块能不能实现所需要的功能经过了先期的模块测试和后期的综合测试本系统实现了规格说明书的所有功能达到了预期的要求 结 语 开发Web站点是一项复杂繁重的工作需要多方面的知识此次通过设计网上考试系统使我接触到许多基于java语言的WEB网络开发方面的知识包括HTML 语言CSS级联样式表用户端开发语言JavaScriptMVC分层体系结构支持MVC架构的struts框架开源服务器Tomcat以及mysql数据库服务器端开发语言JSP等这些语言或技术扩展了我的知识面也使我在制作的过程中对它们的特点应用方向等有了基本的了解并在实际的应用中大致明白如何将它们融合运用以开发出界面美观功能强大的Web站点来 通过本次亲自动手设计系统我更加深刻的了解系统开发的全过程从中我熟练掌握了BS结构Web应用软件设计的思想及其开发的全过程首先要进行系统的需求分析分析系统要达到什么功能系统要划分为几个模块来设计系统的具体功能应当如何去实现分析完之后考虑其涉及到的计算机专业知识把问题细化把大的问题划分为小的问题然后逐个进行解决 设计收获 掌握了网站开发的基本流程设计整个网站的功能模块图 掌握了如何搭建和配置一个Tomcat服务器 掌握了使用JSP编程实现对信息的显示修改删除和添加等 遇到的问题 1(JSP中文乱码问题的解决 对于JSP中文乱码问题的处理常用的方法有两种一种方法是在JSP页面上设置页面的contentType属性这种方法就是在页面开始时设置页面的contentType属性例如 page contentType texthtmlcharset gb2312 另一种方法是输出中文信息时使用ISO 8859-1编码这种方法是在输出中文信息之前对中文信息进行一次ISO 8859-1编码 2(comPointerException异常 一般是对一个为NULL值的变量进行操作引起的为了避免这种异常最好在对变量操作之前检查看它是否为NULL值 3(SQL语句换行书写时未加适当的空格而导致的错误 由于个人能力有限以及实践经验欠缺系统基本满足在线考试的功能需求本系统不可避免有不足之处如一些系统功能过于简单所以系统的功能还算不上很完善希望老师和同学能给予建议和指导 参考文献 [1] 张海藩(软件工程导论[M](北京清华大学出版社1998( [2] 陈禹方美琪(软件开发工具[M](经济科学出版社2002( [3] 孙卫琴[M](电子工业出版社2009(20-824] 孙卫琴[M](电子工业出版社2006( [5] 张桂元贾燕枫(Struts开发入门与项目实践[M](北京人们邮电出版社 2005( [6] 匡泰(基于web的进销存管理系统的设计与研究[J](浙江工业大学学报2004(187] 印旻(Java语言与面向对象程序设计[M](北京清华大学出版社2000(8] Andreas Vogel(Java Programming with CORBA[M](Jonh Wiley Sons1997(9] Elliote Rusty Harold(Java Network Programming[M](OReilly2008( 附 录 package comon import comyList import com import jcomHttpServletRequest import comts2ServletActionContext import comopensympcomonSupport import comSubject import comiceSubjectService import comiceSubjectServiceImpl import comPage import comPageResult public class LikeQuerySubjectAction extends ActionSupport private String subjectTitle 试题标题 private int currentPage 当前页 private SubjectService subjectService new SubjectServiceImpl public int getCurrentPage return currentPage public void setCurrentPage int currentPage thiscurrentPage currentPage public String getSubjectTitle return subjectTitle public void setSubjectTitle String subjectTitle thissubjectTitle subjectTitle public String execute throws Exception Page page new Page pagesetEveryPage 10 每页显示10条记录 pagesetCurrentPage currentPage 设置当前页 PageResult pageResult subjectServicelikeQueryBySubjectTitle subjectTitle page List subjects pageResultgetList 获得试题记录 List newSubjects new ArrayList 新的记录 给关键字标红 for Subject subject subjects String newTitle subjectgetSubjectTitle replaceAll subjectTitle " font color red " subjectTitle " " subjectsetSubjectTitle newTitle newSubjectsadd subject page pageResultgetPage 获得分页信息 HttpServletRequest request ServletActionContextgetRequest requestsetAttribute "subjects" newSubjects requestsetAttribute "page" page return SUCCESS package com import com import com import comom import comy import comion import comsaction import comopensympcomonContext import comrnateHibernateSessionFactory import comStudent import comSubject import comTeacher import comPage public class SubjectDAOImpl implements SubjectDAO public void addSubject Subject subject Session session HibernateSessionFactorygetSession 获得 Session对象 Transaction transaction null声明一个事务对象 try transaction sessionbeginTransaction 开启事务 sessionsave subject 保存试题信息 transactioncommit 提交事务 catch Exception ex exprintStackTrace transactionrollback 事务回滚 HibernateSessionFactorycloseSession 关闭Session对象 public Subject findSubjectByTitle String subjectTitle Session session HibernateSessionFactorygetSession 获得 Session对象 Query query sessioncreateQuery "from Subject as sub where subsubjectTitle " querysetString 0 subjectTitle List list querylist 查询结果保存到list 中 HibernateSessionFactorycloseSession 关闭Session对象 if listsize 0 return null 返回null else return Subject listget 0 返回第一个试题 public List findSubjectByPage Page page Session session HibernateSessionFactorygetSession 获得Session对象 Query query sessioncreateQuery "from Subject" querysetResults pagegetEveryPage 设置查询记录数 querysetFirstResult pagegetBeginIndex 设置查询记录起始位置 List list querylist 查询结果保存到list中 HibernateSessionFactorycloseSession 关闭Session对象 return list public int findSubjectCount Session session HibernateSessionFactorygetSession 获得Session对象 Query query sessioncreateQuery "from Subject" List list querylist 查询结果保存到list中 int count listsize HibernateSessionFactorycloseSession 关闭Session对象 return count public Subject findSubjectByID int subjectID Session session HibernateSessionFactorygetSession 获得 Session对象 Subject subject Subject sessionget Subjectclass subjectID HibernateSessionFactorycloseSession 关闭Session对象 return subject public void updateSubject Subject subject Session session HibernateSessionFactorygetSession 获得 Session对象 Transaction transaction null声明一个事务对象 try transaction sessionbeginTransaction 开启事务 sessionupdate subject 更新试题信息 transactioncommit 提交事务 catch Exception ex exprintStackTrace transactionrollback 事务回滚 HibernateSessionFactorycloseSession 关闭Session对象 public void deleteSubject int subjectID Session session HibernateSessionFactorygetSession 获得Session对象 Subject subject Subject sessionget Subjectclass subjectID Transaction transaction null声明一个事务对象 try transaction sessionbeginTransaction 开启事务 sessiondelete subject transactioncommit 提交事务 catch Exception ex exprintStackTrace transactionrollback 事务回滚 HibernateSessionFactorycloseSession 关闭Session对象 public List likeQueryByTitle String subjectTitlePage page Session session HibernateSessionFactorygetSession 获得Session对象 Query query sessioncreateQuery "from Subject as sub where subsubjectTitle like title " querysetString "title"""subjectTitle"" querysetResults pagegetEveryPage 设置查询记录数 querysetFirstResult pagegetBeginIndex 设置查询记录起始位 置 List list querylist 查询结果保存到list中 HibernateSessionFactorycloseSession 关闭Session对象 return list public int findLinkQueryCount String subjectTitle Session session HibernateSessionFactorygetSession 获得 Session对象 Query query sessioncreateQuery "from Subject as sub where subsubjectTitle like title " querysetString "title"""subjectTitle"" List list querylist 查询结果保存到list中 int count listsize HibernateSessionFactorycloseSession 关闭Session对象 return count public List randomFindSubject int number Session session HibernateSessionFactorygetSession 获得 Session对象 Query query sessioncreateQuery "from Subject as sub order by sys_guid " querysetResults number 设置查询记录数 List list querylist HibernateSessionFactorycloseSession 关闭Session对象 return list public List BuMenfindSubjectByPage Page page String sclass Session session HibernateSessionFactorygetSession 获得 Session对象 Query query sessioncreateQuery "from Subject as sub where subsclass " querysetString 0sclass querysetResults pagegetEveryPage 设置查询记录数 querysetFirstResult pagegetBeginIndex 设置查询记录起始位 置 List list querylist 查询结果保存到list 中 HibernateSessionFactorycloseSession 关闭Session对象 return list public int BuMenfindSubjectCount String sclass Session session HibernateSessionFactorygetSession 获得 Session对象 Query query sessioncreateQuery "from Subject as sub where subsclass " querysetString 0sclass List list querylist 查询结果保存到list 中 int count listsize HibernateSessionFactorycloseSession 关闭Session对象 return count public List BuMenfindSubject String sclass Session session HibernateSessionFactorygetSession 获得 Session对象 Query query sessioncreateQuery "from Subject as sub where subsclass " querysetString 0sclass List list querylist 查询结果保存到list 中 HibernateSessionFactorycloseSession 关闭Session对象 return list 后 记 首先我要感谢我的指导老师他在百忙之中给我的无私的指导和帮助他严谨的治学态度一丝不苟的做事精神渊博的专业知识和平易近人的工作作风使我受益匪浅在我的这次课题设计中老师大到论文选题细至论文中的文字用语方面所给予的点拨和 意见 文理分科指导河道管理范围浙江建筑工程概算定额教材专家评审意见党员教师互相批评意见 将是我今后学习和工作中的一笔宝贵的财富 在此我衷心的感谢领导给我们提供了舒适的学习设计环境并给予我们细心的关怀与指导我从老师的身上学到了许多解决问题的方法他们认真负责的工作态度严谨的治学精神和深厚的理论水平都使我收益匪浅他们无论在理论上还是在实践中都给与我很大的帮助使我得到不少的提高这对于我以后的工作和学习都有一种巨大的帮在设计的同时和同学们之间的相互探讨也使我获益匪浅 最后对所有帮助过我的老师和同学表示衷心的感谢 罗冬明在线计算机竞赛系统 华东交通大学理工学院毕业设计论文 28 27 Web 浏览器 JSP页面 生成的servlet 编译的servlet Web服务器 2(第一次编译 3(第二次编译 1(请求 4(响应
本文档为【在线计算机知识竞赛系统毕业论文在线考试系统】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_574951
暂无简介~
格式:doc
大小:72KB
软件:Word
页数:0
分类:工学
上传时间:2017-09-01
浏览量:24