毕业设计论文基于J2EE,Ajax技术的监考信息发布系统

上传人:痛*** 文档编号:148311958 上传时间:2022-09-04 格式:DOC 页数:30 大小:1.86MB
返回 下载 相关 举报
毕业设计论文基于J2EE,Ajax技术的监考信息发布系统_第1页
第1页 / 共30页
毕业设计论文基于J2EE,Ajax技术的监考信息发布系统_第2页
第2页 / 共30页
毕业设计论文基于J2EE,Ajax技术的监考信息发布系统_第3页
第3页 / 共30页
点击查看更多>>
资源描述
基于J2EE/Ajax技术的监考信息发布系统 070607111基于J2EE/Ajax技术的监考信息发布系统作者姓名:XXX 指导老师:XXX摘 要:当前参加考试的学生数量比较大,需要安排的监考工作也很多,给教务老师带来了很多的工作困难。大部分监考信息还是纸质的,而且很多的监考信息还是纯电子形式堆积在一起,查询非常困难。为实现对监考信息更有效的管理,减轻教务老师的工作压力,需要以系统的方式来管理这些信息。本论文的编写参照软件设计国家规范GB/T 8567-2006。关键词:J2EE,Ajax,监考信息发布系统1需求分析1.1需求简介当前参加考试的学生数量比较大,需要安排的监考工作也很多,给教务老师带来了很多的工作困难。大部分监考信息还是纸质的,而且很多的监考信息还是纯电子形式堆积在一起,查询非常困难。为实现对监考信息更有效的管理,减轻教务老师的工作压力,需要以系统的方式来管理这些信息。本规格的内容涵盖了本系统的硬件需求、软件需求、网络需求及业务流程需求。本规格的阅读、使用者包包括:项目管理人员、软件设计人员、编程人员、软件测试人员、软件质量控制人员、软件维护人员。1.2系统概述监考信息发布系统旨在服务于教育主管部门或行政机构人员发布考试信息和管理所有的考试的资源,考试的监考教师和学生可以快速正确的查看自己的考试信息,以及考场安排等信息。具体要求如下:为了限制访问人数及系统的安全,系统必须在有账号和密码的情况下才能登录。登录的用户只能是学生、教师、行政管理员。所有用户都能查看个人的信息以及可以修改个人的功能。学生和教师可以查询自己的所有的考试信息,支持模糊查询。行政管理员可以对监考教师、教室、考试科目、班级、考试进行管理,主要是查看、添加、修改、删除。1.3系统目标管理员正确的发布考试信息,学生和教师可以正确的查询监考信息。1.4系统特点一次考试所涉及的事情很多,班级、学生、科目、教师的要合理安排是比较困难的,要求资源能得到完全的应用,完成所有的考试所花费的时间尽可能的少。所有要求系统具有一些简单的逻辑判断,避免安排不合理。本系统采用现在比较流行的J2EE平台,使用Hibernate+Struts+Ajax技术,Hibernate技术是对象持久化的技术,可以方便的把信息存放到数据库中,而Struts是经典的设计模式MVC的完整的体现。而Ajax技术可以实现局部刷新,可以带来很好的用户体验。采用以上技术可以快速的完成系统的开发。1.5系统分析对需求进行分析,可以得出用例图。系统用例图如图1、图2所示:图 1管理员用例图图 2 学生和教师的用例图1.6系统环境一、软件环境本系统使用的操作系统是windows XP 及以上版本,数据库使用的是MySQL,开发软件: MyEclipse和Tomcat,浏览器是IE6.0以上版本、Firefox3.0以上版本的浏览器二、硬件环境本系统的使用的是CPU是P4 1.8GHz,内存为256MB以上,显卡缓存32M。2 概要设计2.1功能模块清单及描述根据需求可以分为几个功能模块,功能模块清单见表一。表一 功能模块清单功能ID功能名称简要说明001用户登录登录到系统002个人信息查看个人信息及修改003修改密码修改个人秘密004考试查询查询考试安排005教师管理管理教师(查看、删除、修改、添加)006教室管理管理教室(查看、删除、修改、添加)007课程管理管理课程(查看、删除、修改、添加)008班级管理管理班级(查看、删除、修改、添加)009考试管理管理考试(查看、删除、修改、添加)2.2功能模块描述用户登录一、功能名称:用户登录二、功能概述用户进入系统的第一步,用户必须提正确供账号和密码,输入验证码,才能进入到系统。三、输入内容用户的账号、密码及在线的验证码和用户的类型。四、输入数据来源用户键盘输入。五、控制条件三个输入内容不能为空。六、处理流程输入账号、密码、验证码,选择用户类型。点击登录按钮,进入后台验证。验证正确进入系统主页,否则给出错误信息。七、输出内容如果用户的账号、密码、验证码、用户类型都正确则输出系统主页,否则继续在登录页面,并且给出错误原因。2.3功能模块描述个人信息一、功能名称:个人信息。二、功能概述用户进入到系统后,可以查看自己的个人信息并且可以更改部分信息。三、输入内容用户的部分个人信息。四、输入数据来源用户键盘输入。五、控制条件输入内容不能为空。六、处理流程选择个人信息选项中个人信息设置。输入要修改的内容点击确定按钮。进入系统后台处理,然后给出处理结果。七、输出内容给出处理结果。2.4功能模块描述修改密码一、功能名称:修改密码。二、功能概述用户进入到系统后,可以修改登录时候的密码。三、输入内容原密码、新密码以及重复输入新密码。四、输入数据来源用户键盘输入。五、控制条件输入内容不能为空。六、处理流程选择个人信息选项中个人信修改个人密码。输入三次密码。进入系统后台处理,然后给出处理结果。七、输出内容给出处理结果。2.5功能模块描述查询考试一、功能名称:查询考试。二、功能概述用户进入到系统后,如果是学生查看自己的考试安排,如果是教师则可以查看自己的监考安排。也可以查看其他的考试安排,支持模糊查询。三、输入内容查询关键字。四、输入数据来源用户键盘输入。五、控制条件无。六、处理流程查询自己的考安排,则不输入内容,查询总的考试安排,则输入关键字。点击查询按钮。输入查询结果。七、输出内容给出查询结果,如果体检不满足,结果可能为空。2.6功能模块描述教师管理一、功能名称:教师管理。二、功能概述此功能是管理员功能,对参加的监考的老师进行管理,可以查看、修改、删除、添加。三、输入内容添加:教师基本信息。修改:教师的部分信息。删除:无。查看:无。四、输入数据来源添加:键盘输入修改:键盘输入。删除:网页。查看:网页。五、控制条件添加:无。修改:无。删除:无。查看:无。六、处理流程添加:点击添加按钮,输入必要的信息,点击确定,进入后台处理,然后给出处理结果。修改:点击所要修改的行对于的修改,弹出对话框,然后修改相应的信息,点击确定按钮,完成修改,最后给出修改结果。删除:点击要修改的行对应的删除,进入后台处理,然后给出处理结果。查看:点击管理教师即可,得出所有的信息。七、输出内容添加:成功则给出信息,然后再页面显示最新的结果,错误的情况给出原因。修改:成功则给出信息,然后再页面显示最新的结果,错误的情况给出原因。删除:成功则给出信息,然后再页面显示最新的结果,错误的情况给出原因。查看:点击进入相应的管理页面即可,得出所有的信息记录。2.7功能模块描述教室管理一、功能名称:教室管理。二、功能概述此功能是管理员功能,对有考试的教室进行管理,可以查看、修改、删除、添加。三、输入内容添加:教室基本信息修改:教室的部分信息。删除:无。查看:无。四、输入数据来源添加:键盘输入。修改:键盘输入。删除:网页。查看:网页。五、控制条件添加:无。修改:无。删除:无。查看:无。六、处理流程添加:点击添加按钮,输入必要的信息,点击确定,进入后台处理,然后给出处理结果。修改:点击所要修改的行对于的修改,弹出对话框,然后修改相应的信息,点击确定按钮,完成修改,最后给出修改结果。删除:点击要修改的行对应的删除,进入后台处理,然后给出处理结果。查看:点击管理教室即可,得出所有的信息。七、输出内容添加:成功则给出信息,然后再页面显示最新的结果,错误的情况给出原因。修改:成功则给出信息,然后再页面显示最新的结果,错误的情况给出原因。删除:成功则给出信息,然后再页面显示最新的结果,错误的情况给出原因。查看:点击进入相应的管理页面即可,得出所有的信息记录。2.8功能模块描述课程管理一、功能名称:课程管理。二、功能概述:此功能是管理员功能,对所有要考试的课程进行管理,可以查看、修改、删除、添加。三、输入内容:添加:课程基本信息修改:课程的部分信息。删除:无。查看:无。输入数据来源添加:键盘输入。修改:键盘输入。删除:网页。查看:网页。四、控制条件:添加:无。修改:无。删除:无。查看:无。五、处理流程添加:点击添加按钮,输入必要的信息,点击确定,进入后台处理,然后给出处理结果。修改:点击所要修改的行对于的修改,弹出对话框,然后修改相应的信息,点击确定按钮,完成修改,最后给出修改结果。删除:点击要修改的行对应的删除,进入后台处理,然后给出处理结果。查看:点击管理课程即可,得出所有的信息。六、输出内容添加:成功则给出信息,然后再页面显示最新的结果,错误的情况给出原因。修改:成功则给出信息,然后再页面显示最新的结果,错误的情况给出原因。删除:成功则给出信息,然后再页面显示最新的结果,错误的情况给出原因。查看:点击进入相应的管理页面即可,得出所有的信息记录。2.9功能模块描述班级管理一、功能名称:班级管理。二、功能概述此功能是管理员功能,如果参加考试的班级进行管理,可以查看、修改、删除、添加。三、输入内容添加:班级基本信息。修改:班级的部分信息。删除:无。查看:无。四、输入数据来源添加:键盘输入修改:键盘输入。删除:网页。查看:网页。五、控制条件添加:无。修改:无。删除:无。查看:无。六、处理流程添加:点击添加按钮,输入必要的信息,点击确定,进入后台处理,然后给出处理结果。修改:点击所要修改的行对于的修改,弹出对话框,然后修改相应的信息,点击确定按钮,完成修改,最后给出修改结果。删除:点击要修改的行对应的删除,进入后台处理,然后给出处理结果。查看:点击管理班级即可,得出所有的信息。七、输出内容添加:成功则给出信息,然后再页面显示最新的结果,错误的情况给出原因。修改:成功则给出信息,然后再页面显示最新的结果,错误的情况给出原因。删除:成功则给出信息,然后再页面显示最新的结果,错误的情况给出原因。查看:点击进入相应的管理页面即可,得出所有的信息记录。2.10功能模块描述考试管理一、功能名称:考试管理。二、功能概述:此功能是管理员功能,对班级、科目、教室以及教室进行安排,管理考试的安排。三、输入内容添加:考试基本信息。修改:考试的部分信息。删除:无。查看:无。四、输入数据来源添加:键盘输入。修改:键盘输入。删除:网页。查看:网页。五、控制条件添加:无。修改:无。删除:无。查看:无。六、处理流程添加:点击添加按钮,选择班级、教室、教师、课程,点击确定,进入后台处理,然后给出处理结果。修改:点击所要修改的行对于的修改,弹出对话框,然后修改相应的信息,点击确定按钮,完成修改,最后给出修改结果。删除:点击要修改的行对应的删除,进入后台处理,然后给出处理结果。查看:点击管理考试即可,得出所有的信息。七、输出内容添加:成功则给出信息,然后再页面显示最新的结果,错误的情况给出原因。修改:成功则给出信息,然后再页面显示最新的结果,错误的情况给出原因。删除:成功则给出信息,然后再页面显示最新的结果,错误的情况给出原因。查看:点击进入相应的管理页面即可,得出所有的信息记录。2.11用户界面1. 系统总体的界面,需要设定统一的JSP页面头部和页面尾部。2. 整个系统的界面风格以及色彩要搭配合理,使得界面让人看了会很和谐自然。3. 输出的表格,要设定统一的文件风格、字体、色彩等。2.12安全性因为此系统需要连接学校的教务管理系统,所有具有很高的安全性,所以必须要保证系统有足够的安全性。在本系统中,用户在使用本系统的时候,必须首先要登录,通过过滤器来验证用户名和密码来实现,以防止不合法的用户对此系统进行的不合法操作。同时,本系统还需要设置对填入信息的有效性的检验,通过过滤器来过滤不合法的输入。2.13系统性能系统要求具有较好的处理数据的性能,处理的时间间隔不能超过1s。同时,针对数据库的处理能力,要求具有良好的查询的效率。针对网站的性能,要求能够同时支持1000人同时在线使用本系统。3 数据库设计3.1简介数据库是现代计算机应用信息系统不可或缺的一部分,从某种意义上讲,一个数据库设计的好坏直接关系到系统的设计的成败,数据库设计已成为一个系统设计过程中重要的一环。本说明书说明“监考信息发布系统”的数据库设计、结构情况,用于开发人员进行项目设计,同时也为后续的数据库维护工作提供了良好的使用说明,也可以作为未来版本升级时的重要参考资料。本系统使用的数据库是MySQL,MySQL是目前最流行的开发源代码的数据库管理系统,全世界的装机量已超过1000万台。MySQL是一个小型的关系数据库管理系统,开发者是瑞典的MySQL AB公司,2008年1月被Sun公司收购,Sun公司又被Oracle公司收购。由于体积小,速度快,成本低,尤其是开源,被许多中小型网站使用。3.2数据库环境说明数据库平台是MySQL 5.0.22,数据库设计工具:Navicat、MyEclipse Datebase Explorer,数据库所使用的操作系统:Window 7。3.3数据库命名规则所有数据项都用相关英语单词组合而来,所有的字母都是小写的,如果是几个单词连接组成,则中间以“_”连接,若是常用的标识符及标识名,这个词会以Id或Name结束。字符集采用 gb2312,与系统中使用的编码系统。数据库表所有的名称都是以t开头,表示这是一个表,然后是“_名称”。数据库表中第一字段一般是表的主键,是Varchar(32)类型的,主键是由Hibernate主键生成策略生成一个唯一的字符串。3.4数据库说明3.4.1保密设计用户只能通过系统登陆、访问数据库,而不能直接操作数据库。对于几个保存用户密码的字段,都是经过MD5加密密存储。3.4.2数据库连接说明数据库标示符:jiankao用户名:root密码:sa权限:全部有效时间:开发阶段说明:系统正式发布后,可能更改数据库用户/密码,请修改Hibernate配置文件中的用户名和密码,在发行前请予以改正。3.5数据库表说明3.5.1数据库表一览表系统数据库设计所有涉及的表见表二。表二 数据库表一览表序号表ID英 文 名 称简 要 说 明DBMS的名称、版本01Jiankao_t_01t_admin管理员用户表V1.002Jiankao_t_02t_classes班级表V1.003Jiankao_t_03t_classroom教室V1.004Jiankao_t_04t_course课程表V1.005Jiankao_t_05t_exam考试表V1.006Jiankao_t_06t_exam_teacher考试教师表V1.007Jiankao_t_07t_log日志表V1.008Jiankao_t_08t_student学生用户表V1.009Jiankao_t_09t_teacher教师用户表V1.03.5.2数据库表规格说明表三 数据库表结构-管理员用户表设计人夏秋垒审核人夏秋垒批准人夏秋垒表IDJiankao_t_01表名称t_admin表中文名称管理员用户表数 据来 源数据库管理员进行增加、删除、更改、查询主 要用 途存储所有的系统管理员或行政工作人员的基本账户信息。序号字段名字段说明字段类型主键/索引/外键允许为空缺省值01id编号Varchar(32)主键Not Null02user_name姓名Varchar(32)Not Null03login_name账户Varchar(32)Not Null04pwd密码Varchar(32)Not Null05sex性别Varchar(1)Not Null06birthday生日DateNot Null07cardno身份证号码Varchar(32)Not Null表四 数据库表结构-班级表设计人夏秋垒审核人夏秋垒批准人夏秋垒表IDJiankao_t_02表名称t_classes表中文名称班级表数 据来 源管理员进行增加、删除、更改、查询主 要用 途存储所有班级的基本信息。序号字段名字段说明字段类型主键/索引/外键允许为空缺省值01id编号Varchar(32)主键Not Null02name名称Varchar(32)Not Null表五 数据库表结构-班级表设计人夏秋垒审核人夏秋垒批准人夏秋垒表IDJiankao_t_03表名称t_classroom表中文名称教室表数 据来 源管理员进行增加、删除、更改、查询主 要用 途存储所有的教室的基本信息。序号字段名字段说明字段类型主键/索引/外键允许为空缺省值01id编号Varchar(32)主键Not Null02name名称Varchar(32)Not Null03classdesc教室描述TextNot Null表六 数据库表结构-班级表设计人夏秋垒审核人夏秋垒批准人夏秋垒表IDJiankao_t_04表名称t_course表中文名称课程表数 据来 源管理员进行增加、删除、更改、查询主 要用 途存储所有的课程的基本信息。序号字段名字段说明字段类型主键/索引/外键允许为空缺省值01id编号Varchar(32)主键Not Null02course_name名称Varchar(32)Not Null03exam_date教室描述DateNot Null04start_time开始时间TimeNot Null05end_time结束时间TimeNot Null表七 数据库表结构-班级表设计人夏秋垒审核人夏秋垒批准人夏秋垒表IDJiankao_t_05表名称t_exma表中文名称考试表数 据来 源管理员进行增加、删除、更改、查询主 要用 途存储所有的考试的基本信息。序号字段名字段说明字段类型主键/索引/外键允许为空缺省值01id编号Varchar(32)主键Not Null02classes_id班级编号Varchar(32)外键Not Null03course_id课程编号Varchar(32)外键Not Null04classroom_id教室编号Varchar(32)外键Not Null表八 数据库表结构-班级表设计人夏秋垒审核人夏秋垒批准人夏秋垒表IDJiankao_t_06表名称t_exma_teacher表中文名称考试教室表数 据来 源管理员进行增加、删除、更改、查询主 要用 途存储所有的考试的所想对应的教师基本信息。序号字段名字段说明字段类型主键/索引/外键允许为空缺省值01exam_id考试编号Varchar(32)外键Not Null02teacher_id教室编号Varchar(32)外键Not Null表九 数据库表结构-班级表设计人夏秋垒审核人夏秋垒批准人夏秋垒表IDJiankao_t_07表名称t_log表中文名称日志表数 据来 源管理员进行增加、删除、更改、查询主 要用 途存储所有的用户的操作日志。序号字段名字段说明字段类型主键/索引/外键允许为空缺省值01id编号Varchar(32)主键Not Null02logtime日志时间DateTime外键03content日志内容TextNot Null04u_id用户编号Varchar(32)表十 数据库表结构-管理员用户表设计人夏秋垒审核人夏秋垒批准人夏秋垒表IDJiankao_t_08表名称t_student表中文名称学生表数 据来 源库管理员进行增加、删除、更改、查询主 要用 途存储所有的学生的信息。序号字段名字段说明字段类型主键/索引/外键允许为空缺省值01id编号Varchar(32)主键Not Null02user_name姓名Varchar(32)Not Null03login_name账户Varchar(32)Not Null04pwd密码Varchar(32)Not Null05sex性别Varchar(1)Not Null06birthday生日DateNot Null07cardno身份证号码Varchar(32)Not Null08classes_id班级编号Varchar(32)外键Not Null表十一 数据库表结构-管理员用户表设计人夏秋垒审核人夏秋垒批准人夏秋垒表IDJiankao_t_09表名称t_teacher表中文名称教师表数 据来 源库管理员进行增加、删除、更改、查询主 要用 途存储所有的教师的信息。序号字段名字段说明字段类型主键/索引/外键允许为空缺省值01id编号Varchar(32)主键Not Null02user_name姓名Varchar(32)Not Null03login_name账户Varchar(32)Not Null04pwd密码Varchar(32)Not Null05sex性别Varchar(1)Not Null06birthday生日DateNot Null07cardno身份证号码Varchar(32)Not Null3.5.3数据库表关联表十二 数据库表关联信息表序号表名字段关联表名关联字段01t_examclassroom_idt_classroomid02t_examclasses_idt_classesid03t_examcourse_idt_courseid04t_exam_teacherexam_idt_examid05t_exam_teacherteacher_idt_teacherid06t_studentclasses_idt_classesid4 编码实现及测试4.1技术简介本系统使用J2EE技术体系,J2EE核心是一组技术规范与指南,其中所包含的各类组件、服务架构及技术层次,均有共通的标准及规格,让各种依循J2EE架构的平台之间,存在良好的兼容性,解决过去企业后端使用的信息产品彼此之间无法兼容,,企业内部或外部难以互通的窘境。J2EE体系结构提供中间层集成框架用来满足无需太多费用而又需要高可用性、高可靠性以及可扩展性的应用的需求。通过提供统一的开发平台,J2EE降低了开发多层应用的费用和复杂性,同时提供对现有应用程序集成强有力支持,完全支持Enterprise JavaBeans,有良好的向导支持打包和部署应用,添加目录支持,增强了安全机制,提高了性能。此外也采用流行的框架的Struts2和Hibernate,以及Ajax技术,方便系统开发。4.1.1Struts2在介绍Struts2之前,先介绍一下MVC模式,MVC是模型层(Model)、视图层(View)、控制层(Controller)。MVC模式的目的就是实现web系统的只能分工。在Java Web中模型层使用的事Java Bean,视图层使用的是JSP和JSTL等,而在控制层则使用Servlet和过滤器。由此才有了很多的MVC框架,其中Struts就是其中一个,Struts又分Struts1和Struts2,本系统使用是Struts2,图3是Struts2的一个结果图。图3 Struts2结构图Struts是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的。由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,在业界颇受关注。Struts把Servlet、JSP、自定义标签和信息资源(Message Resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大的节省了时间,所以说Struts是一个非常不错的应用框架。4.1.2 Hibernate企业开发中,把面向对象的软件和关系数据库一起使用是相当麻烦、浪费时间的。Hibernate是一个面向Java环境的对象/关系数据库映射工具。对象/关系数据库映射(Object/Relational Mapping (ORM)这个术语表示一种技术,用来把对象模型表示的对象映射到基于SQL的关系模型数据结构中去。 Hibernate不仅仅管理Java类到数据库表的映射(包括Java数据类型到SQL数据类型的映射),还提供数据查询和获取数据的方法,可以大幅度减少开发时人工使用SQL和JDBC处理数据的时间。 Hibernate还可以消除或者包装那些针对特定厂商的SQL代码,并且帮你把结果集从表格式的表示形式转换到一系列的对象去。4.1.3AjaxAjax(Asynchronous JavaScript + XML),即异步JavaScript + XML的缩写,Ajax并不是一种全新的技术,而更像一种技巧,是把过去的几种技术巧妙结合的技巧。真正与Ajax相关的新名词应该是XMLHttpRequest一个最早在IE 5中出现,最近开始在多数浏览器得到支持的用来实现异步通信的对象。B/S模式是利用浏览器作为其通用的客户端,所以要想异步通讯成为可能,必须要得到浏览器的支持。Ajax技术的框架很多,比如jQuery、Prototype、Ext等都是优秀的JavaScript框架,本系统使用的是jQuery。4.2编码规范接口命名规则:接口名称前加“I”,如下所示:public interface IUserDaopublic User findById(String id);类的命名:类名要求为名词且第一个字母要求大写,若是多个单词组成的复合类名,则每个单词的首字母也要求大写。public class StudentAction/class body方法的命名方法:一般将方法命名为动宾短语。如:getName(),setName(),createUser()属性的命名:属性以名词的形式出现,属性首字母小写,若由多个单词组成,则其它单词的首字母的大写。如:userName 等。变量、参数:变量,参数采用如属性名一致的命名方法。如:int totalCount。常量:全部大写,单词之间以 “_” 分隔,例:MYSQL_DRIVER。代码的缩进:一般采用TAB键对代码进行缩进,当然在用诸如MyEclipse之类的开发工具的时候,此时用开发工具提供的代码缩进方式并要求在代码完成后对相应的代码进行格式化处理。4.3系统框架搭建本系统使用的是MyEclipse开发的,下面简单介绍系统的包结构,详细见图5。|-src项目源文件总文件夹|-org.liushui.jiankao总包|-action存放功能模块的Action,此包下面还可以跟句功能再分|-dao数据库访问接口,里面还有字包impl,存放接口的实现类|-entity放置系统中使用的实体类和Hibernate映射文件|-filter过滤器|-hibernateHibernate工具包|-test测试文件包|-util常有工具类包|-xxx系统和一些工具类的配置文件|-lib系统所需要的jar包|-WebRoot总文件夹|-csscss文件|-image/images图片文件|-jsJavaScript文件|-META-INF元数据文件|-WEB-INF|-admin/student/teacher/功能模块分类文件|-lib类库web.xml配置文件index.jsp主页 图4系统包结构4.4功能模块详细设计及代码实现功能模块清单是从概要设计中来的,详细请见表一。4.4.1功能模块系统登录一、操作界面登录模块由系统登录界面、系统主界面、和登录失败主界面组成。图5 登录界面 图6系统主界面和登录失败二、模块流程流程图见图7。 图7登录系统流程图三、关联模块无。四、核心代码本代码主要功能是根据用户类型,进行登录验证。public class UserAction public String login() Map session = ActionContext.getContext().getSession();String imagecode = (String) session.get(imagecode);if (!imagecode.equals(code) msg = 验证码错误!;return fail;IUserDao dao = (IUserDao) DaoFactoryUtil.getInstance(IUserDao.class);String tempPwd = Md5Util.getMd5(pwd);if (student.equals(type) /学生类型用户 else if (teacher.equals(type) /教师类型用户 else if (admin.equals(type) /管理员类型用户return fail;五、数据库引用本模块使用了t_admin、t_teacher、t_student三张表。六、测试要点本模块单元测试的测试要点:账号、密码、验证码输入为空时要有提示,登录失败时候要有错误原因。4.4.2功能模块个人信息一、操作界面个人信息由个人信息设置页面组成,不同用户的基本资料会有所不同。图8 学生个人信息页面二、模块流程流程图见图9。 图9 个人信息流程图三、关联模块本功能模块关联到系统登录模块。四、核心代码本代码主要功能是修改个人信息。public class StudentAction public String updateinfo() return success;五、数据库引用本模块使用了t_admin、t_teacher、t_student三张表。六、测试要点本模块单元测试的测试要点:修改个人信息时候,要验证修改后的信息是否合格,修改以后要给出修改结果。4.4.3功能模块修改密码一、操作界面修改密码由修改个人密码页面组成,不同用户的密码修改页面基本相同会。图10个人密码修改页面 图11密码修改成功和密码修改失败二、模块流程流程图见图17。 图12 密码修改流程图三、关联模块本功能模块关联到系统登录模块。四、核心代码本代码主要功能是修改用户秘密。public class ModifyPwdAction public String modifyPwd() Student s = (Student) ActionContext.getContext().getSession().get(me);if (!s.getPwd().equals(Md5Util.getMd5(pwd1) msg = 原密码错误!;return success;if (!pwd2.equals(pwd3) msg = 两次输入的密码不一样!;return success;s.setPwd(Md5Util.getMd5(pwd2);Session session = HibernateFilter.getSession();session.beginTransaction();session.saveOrUpdate(s);session.getTransaction().commit();return success;五、数据库引用本模块使用了t_admin、t_teacher、t_student三张表。六、测试要点本模块单元测试的测试要点:三次输入密码非空情况下的提示,两次新密码输入是否相同,修改以后要给出修改结果,修改失败的原因。4.4.4功能模块考试查询一、操作界面考试查询是学生和监考教师的功能,两种用户的页面基本相同。图13考试查询页面 图14查询自己的考试安排和模糊查询的结果图15 查看教室的详细资料二、模块流程流程图见图22。 图16考试查询流程图三、关联模块本功能模块关联到系统登录模块。四、核心代码本代码主要功能是查询学生或教师所要参加考试。public class StudentFindExamAction public String execute() return success;五、数据库引用本模块使用了t_teacher、t_student、t_course、t_classes、t_classroom、t_course、t_exam_teacher表。六、测试要点本模块单元测试的测试要点:测试查询结果是否符合要求。4.4.5功能模块教师管理一、操作界面此功能是管理员功能,主要操作界面就是教师管理。图17教师管理页面图18添加教师(使用Ajax技术验证) 图19双击可直接修改的效果和使用Ajax技术效果的修改结果提示信息二、模块流程流程图见图20。 图20教师流程图三、关联模块本功能模块关联到系统登录模块。四、核心代码本代码主要功能是教师管理。public class ManageTeacherAction public String findAll() return find_success;public String deleteTeacher() return delete_success;public String updateTeacher() return update_success;public String addTeacher() return add_success;五、数据库引用本模块使用了t_teacher、t_student、t_course、t_classes、t_classroom、t_course、t_exan、t_exam_teacher表。六、测试要点本模块单元测试的测试要点:逻辑是否正确。4.4.6功能模块教室管理一、操作界面此功能是管理员功能,主要操作界面是教室管理。图21教室管理页面图22添加教室(使用Ajax技术验证)二、模块流程流程图见图23。 图23教室管理流程图三、关联模块本功能模块关联到系统登录模块。四、核心代码本代码主要功能是教师管理。public class ManageClassroomAction public String findAll() return find_success;public String delClassroom() return del_success;public String updateClassroom() return update_success;public String addClassroom() return add_success;五、数据库引用本模块使用了t_teacher、t_student、t_course、t_classes、t_classroom、t_course、t_exam_teacher表。六、测试要点本模块单元测试的测试要点:逻辑是否正确。4.4.7功能模块课程管理一、操作界面此功能是管理员功能,主要操作界面就是课程管理。图24课程管理页面图25添加课程(使用Ajax技术验证)二、模块流程流程图见图26。图26课程管理流程图三、关联模块本功能模块关联到系统登录模块。四、核心代码本代码主要功能是课程管理。public class ManageCourseAction public String findAll() return find_success;public String updateCourse() return update_success;public String deleteCourse() return delete_success;public String addCourse() return add_success;五、数据库引用本模块使用了t_teacher、t_student、t_course、t_classes、t_classroom、t_course、t_exam_teacher表。六、测试要点本模块单元测试的测试要点:逻辑是否正确。4.4.8功能模块班级管理一、操作界面此功能是管理员功能,主要操作界面就是课程管理。图27班级管理页面图28班级添加(使用Ajax技术验证)二、模块流程流程图见图29。 图29班级管理流程图三、关联模块本功能模块关联到系统登录模块。四、核心代码本代码主要功能是班级管理public class ManageClassesAction public String findAll() public String deleteClasses() return delete_success;public String updateClasses() return update_success;public String addClasses() return add_success;五、数据库引用本模块使用了t_teacher、t_student、t_course、t_classes、t_classroom、t_course、t_exam_teacher表。六、测试要点本模块单元测试的测试要点:逻辑是否正确。4.4.9功能模块考试管理一、操作界面此功能是管理员功能,主要操作界面就是考试管理。图30班级管理页面图31班级添加(使用Ajax技术加载选项)图32修改的页面图33修改结果提示信息二、模块流程流程图见图34。 图34班级管理流程图三、关联模块本功能模块关联到系统登录模块。四、核心代码本代码主要功能是考试管理public class ManageExamAction public String findAll() return find_success;public String deleteExam() return delete_success;public String addExam() return add_success;public String findIds() return findids_succss;public String checkAddExam() return check_success;public String checkUpdateExam() return check_success;public String updateExam() return update_success;五、数据库引用本模块使用了t_teacher、t_student、t_course、t_classes、t_classroom、t_course、t_exan、t_exam_teacher表。六、测试要点本模块单元测试的测试要点:逻辑是否正确。5 项目总结连续几个星期终于把项目和文档完成,一路走来,感受颇多,受益匪浅,系统的完成,使我对Java体系结构有了新的认识,同时也把几种技术集成在一起,经验收获不少。同时也为以后在企业工作增长了不少见识,使我的技术提高了一个水平。致 谢光阴似箭,日月如梭,我们都已经不是大一时候的小菜鸟,再过几个月我们就要离开呆了近四年的安师院了。感谢安师院和安师院的老师们。四年里,他们传授给我们很多知识,也做了很多的指导,我非常感谢那些曾经指导过我的老师,而其中一位对我影响最大的老师就是张步忠老师。张老师在我学习Java的时候给了很大的指导,同时也给我们学习提出了宝贵的意见,我很庆幸在我的大学学习中能遇到一位像他这样的老师。另外此次毕业设计张步忠老师也给予了我精心的指导和热情的帮助,谨此向张老师表示衷心的感谢和崇高的敬意。 同时也感谢在学习Java过程中一起奋斗的唐龙佳、周守亚,他们都给了我很大的鼓励与帮助。最后感谢我们的父母,没有他们,就没有我今天。参 考 文 献1李振捷,陈雄,王军等.JSP网站开发典型模块与实例精讲M.北京.电子工业出版社.2006.2曹广鑫,王谢华,王建凤,等.Struts数据库项目开发宝典M.北京.电子工业出版社.2006.3 (美)Bruce Eckel,陈昊鹏 译.Java编程思想(第四版)M.北京.机械工业出版社.2008.4 David Flanagan,张铭泽(译).JavaScript权威指南M.第五版.北京.机械工业出版社.5王沛,冯曼菲著.征服Ajax:Web2.0开发技术详解M.北京.人民邮电出版社.6Jonathan Chaffer,Karl Swedberg,李松峰,李炜(译). JQuery基础教程M. 北京.电子工业出版社,2008.Invigilate Information Publishing System Based on J2EE and Ajax
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 成人自考


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

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


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