驾照理论报名与考试系统的设计与实现
驾照理论报名与考试系统的设计与实现[20191207151227]
摘 要
本篇论文主要介绍如何实现驾驶员理论考试模拟系统,重点介绍了如何实现Web系统前台的界面、Web后台数据库的设计、Web系统中间结构的设计以及Web系统的测试过程。
本系统整体框架采用稳定性比较高的Struts框架,界面格式采用JSP页面格式,运用DIV、CSS和JS来设计界面的布局样式来布局页面。并且整个系统采用Java Web网站开发技术以Java编程来实现。系统实现的功能有自动生成试卷、在线考试、自动评分、错题集生成以及错题训练,在线用户添加、用户更新、用户删除、试题编辑和试题添加。
本系统在MyEclipse 10、JDK 1.7、MySQL 5.6以及Tomcat7.0上开发和测试成功。系统人机交互性友好,易于操作,并且界面美观。
关键字:JavaWeb在线考试系统StrutsJSPJavaMySQL
目 录
第1章 引言 1
1.1 课题的研究背景 1
1.2 课题的研究目的和目标 1
1.2.1 课题目的 1
1.2.2 课题预期目标 2
1.3 课题的研究方法及其内容 2
1.3.1 研究方法 2
1.3.2 研究内容 3
第2章 与系统开发相关技术研究 4
2.1 系统环境 4
2.1.1 运行环境 4
2.2.1 开发环境 4
2.2 编程语言 5
2.2.1 Java语言简介 5
2.2.2 Java语言在开发Web上的优势 6
2.3 系统采用的Web框架 6
2.3.1 Struts框架 6
2.3.2 Struts的配置文件 7
2.3.3 Web配置文件 7
2.3.4 servlet的介绍 8
2.3.5 过滤器的介绍 8
2.4 系统的物理结构 8
2.4.1 B/S模式简 8
2.4.2 B/S模式的优势 8
2.5 页面和页面美化 9
2.5.1 JSP 9
2.5.2 CSS和DIV 10
2.5.3 JQuery和JS 10
第3章 功能分析 11
3.1 功能模块描述 11
3.1.1 登陆模块 11
3.1.2 管理员模块 11
3.1.3 教员模块 12
3.1.4 学员模块 12
3.2 模块用例图表示 13
3.3 系统功能体系结构 16
第4章 总体设计 17
4.1 数据库设计 17
4.1.1 系统E-R图 17
4.1.2 各个表的详细设计 18
4.2系统类的设计 20
4.2.1 系统中的各个类 20
第5章 详细设计 25
5.1 项目配置 25
5.1.1 Web项目的具体配置 25
5.1.2 Struts框架的具体配置 26
5.2 页面设计 28
5.2.1 JSP页面 28
5.2.2 CSS样式风格设计 29
5.2.3 JS和锚点 29
5.3 系统编程 30
5.3.1 JDBC连接 30
5.3.2 DAO层类封装 32
5.3.3 Action业务处理设计 34
5.3.4 试卷生成 35
5.3.5 自动评分和错题生成 36
5.4 系统部分展示 38
5.4.1 管理员模块 38
5.4.2 教员模块 39
5.4.3 学员模块 39
第6章 系统测试 41
6.1 测试用例 41
6.2 测试结果和分析 42
6.2.1 单元测试结果和分析 42
6.2.2 集成测试结果和分析 42
第7章 总结 43
致谢 44
参考文献 45
第1章 引言
1.1 课题的研究背景
根据CNNIC(中国互联网络信息中心)的第33次普查(2014年1月6日),我国的互联网普及率已为45.8%,对普通老百姓来说互联网已经不再是陌生的东西。鉴于如此数目的互联网普及率,互联网教育的硬件基础已经具备。而另一方面,根据中国汽车工业协会最新出炉的2013年《中国汽车产业发展报告》显示,今年我国依旧是世界第一大的汽车产销国。并据京华时报2014年1月29日的报纸,其引述公安部发布的最新数据显示,我国的机动车数量突破2.5亿量,机动车驾驶员近2.8亿人。上述数据清晰的显示,按全国14亿人口总量,每个家庭4个人来估计,目前我国民众几乎每个家庭都有一个成员需要考取驾驶执照。并且有有一半的家庭已经普及了互联网。这可充分说明,网上驾驶执照考试系统的社会基础已经显现,人们不仅可以并且也希望能够在网上进行驾照理论考试模拟。所以我认为,综合目前的互联网普及率和我国的汽车保有量,我们很有必要开发一个可以帮助广大车友网民的在线驾照理论报名考试系统,以增强驾驶员的驾驶理论知识构建和谐的道路交通环境。
1.2 课题的研究目的和目标
1.2.1 课题目的
如今,由于internet的飞速发展,人们的生活正发生的深刻的变化。考试报名可以在网上报名。网上报名省去了传统报名要人到、证到的麻烦,实现网上报名,不仅让学员随时随地可以网上报名,而且可以省去了聘请传统报名的相关管理人员的费用。以往的各种笔试现在都可以变成在机考。驾照机考是为了实现传统考试不能实现的如下特点:
1. 方便快捷:看过答案做出选择后只要鼠标轻轻一点就完成答题任务。
2. 考试灵活:在线考试可以按知识点设置更多的考题,而且每个人的题目、选项不一样,这样可以更全面地考察所有考生对知识点的掌握和理解程度。
3. 节约:无纸化的考试,省却了传统笔试的纸张笔墨耗费和人工阅卷耗费,从而节约了组织考试的部分的人力物力财力,可以优化教学管理,提高教学质量。
4. 公平公正:机器化的考试评卷使得评卷的过程快速和公正,减少了外来人力对考试公平的干扰。使得考试得以更加公正化的进行。
5. 快速了解所有学员的学习掌握情况:系统可以给出统计数据,帮助分析题目的难度设置合不合理和学员在哪些方面比较强和弱,进行对症下药。
总之,驾照理论网上报名和机考是可行的而且非常有现实意义的。人们早已习惯在pc上面进行相关上网操作,pc端上网目前还是主流。所以开发一款在pc浏览器端上的驾照理论报名与考试系统可以让更多的驾考学员不用学习新的上网操作,方便学员和教练。
1.2.2 课题预期目标
1. 功能方面
通过这个系统,产生3种用户,每个用户都有会涉及到增、删、改、查的操作。系统管理员用户完成对各种用户的管理。教员用户完成对试题库的维护和管理。学员用户可以通过这个系统,进行快速考试,错题专项训练,查看过往分数。通过这个系统,使得学员能够成功完成驾照理论知识的学习,提高机动车驾驶人员的交通规则意识,从而从根本上提高我国道路的交通安全。
2. 用户友好程度
系统的整个UI(User Interface)设计,主要采用了左侧功能区,右侧显示区的设计方法。在功能区,上面放置着不同的菜单按钮,菜单按钮点击后,会下拉出该菜单下属的子按钮。当再次点击菜单按钮时,该菜单区域折叠起来,收起下拉出来的子按钮。在显示区方面,对于用户的增、删、改、查管理,该部分的UI主要是查看列表时候,鼠标放置某个用户记录上方,界面会上浮该用户的详细信息。在该界面,会显示出修改按钮,给予管理员修改该条记录。
1.3 课题的研究方法及其内容
1.3.1 研究方法
根据问卷调查法,通过设计问卷,了解用户对驾照考试系统的功能需求,共对三种用户进行调查,一个是管理员用户,一个是教员用户,一个是学员用户。
对于管理员用户,他最关心的对整个系统用户的管理,一般分为增加用户,修改用户,删除用户,他们一般不关心整个试题是什么样的,或者试卷是什么样的,他们只关心的是怎么管理好整个系统的用户,维护好系统的可用性。所以,只要设计好对用户的增删改查,就能满足管理员用户的需求。
对于教员用户来说,他们最最关心的只有驾照理论考试的试题,因为正作为教员,他们的职责就是教好下面的学员,以及保证试题的合理性。所以对于教员来说,除了“试题管理”这一块内容,还有“个人信息管理”和查询特定学员的成绩。
对于学员来说,他之所以要注册这个用户,他最关心的是能够学好驾驶理论,并且顺利通过考试。所以学员他们最需要的功能是“快速考试”、“错题训练”,这样学员可以充分利用这个驾校平台来完成自己的目标,这也是学员到这个系统注册成用户的根本理由。
1.3.2 研究内容
根据上述的系统需求,进行功能模块的设计。采用Java Web技术的相关技术,如Struts框架,JSP动态页面设计,CSS网页美化,JS网页控件设计,Java网络编程,以及sql数据库等进行系统的设计。首先用比喻来简单介绍一下这些技术。若把整个驾照理论考试系统比作一栋房子,上述这些技术都承担这不同的作用。比如,Struts框架在系统中起到框架支持的作用,它作为整体系统的总体骨架。JSP动态网页设计便承担起墙壁的作用,CSS网页美化和js网页控件则为墙壁上面的漂亮瓷砖。剩下的Java语言编程则为整个“房子”“建造”过程中的水泥,是所有技术的“粘合剂”。而SQL数据库,便是整个系统的数据基础,作为内在和地基,支撑起整栋房子。有了上述比较实际的比喻,相信读者都能初步了解这几个技术的作用了。我的研究内容就是,采用这些技术,完成之前调查出来的各种用户提出的功能,从而形成驾照报名考试系统。
第2章 与系统开发相关技术研究
2.1 系统环境
2.1.1 运行环境
本系统采用B/S(Browser/Server)模式,用户只需要通过互联网借助浏览器便可以登录系统。因此不用安装客户端,方便快捷。没有受到操作系统的限制,运行的操作系统,不仅可以是桌面操作系统如微软的windows视窗操作系统,也可以是Linux的各种衍生出来的操作系统ubuntu等等,只要上述操作系统有浏览器运行,便可以正常访问驾照理论考试系统。
2.2.1 开发环境
1. 硬件环境
电脑型号 戴尔 Inspiron N4010
CPU (英特尔)Intel(R) Core(TM) i3 CPU M 380 @ 2.53GHz(2533 Mhz)
主板 戴尔 0Y73YY
内存 4.00 GB (三星 PC3-10600 DDR3 SDRAM SO-DIMM 1333MHz)
主硬盘 500 GB (希捷 ST9500420AS)
显卡 AMD Radeon HD 6500M/5600/5700 Series (1024MB)
显示器 群创光电 HR1VT 140GW01 32位真彩色 60Hz
网卡 Intel(R) Centrino(R) Wireless-N 1000
表2- 1 硬件环境表
2. 软件环境
操作系统 Windows 7 Ultimate 64bit
JDK(Java Development Kit) 1.7.0_11 version
JRE(Java Runtime Environment) Build 1.7.0_11-b24
IDE(Integrated Development Environment) Myeclipes 10.0
数据库 MySQL 5.6.0
数据库管理工具 Navicat for MySQL 10.1.6 enterprise
Web Server Tomcat 7.0
网页设计软件 Dreamweaver CS5
表2-2 软件环境表
2.2 编程语言
2.2.1 Java语言简介
根据sun公司主页上对Java语言的简介,我用自己的话简单归纳为下属几点:
1. 首先Java是一门编程语言,它如今无处不在,不仅用于Web应用开发上,而且也用于移动开发,如安卓手机应用等等。Web应用和安卓手机应用是我们现今每个人接触最多的软件应用。
2. 它是一门面向对象的语言,可以轻松用于开发大中型Web企业应用系统。而且它还具有强大的可移植性。因为Java程序需要经过编译生成的是字节码,它对Java虚拟机JVM来说是一种解释型的语句,它会被安排在Java虚拟机上面运行。由于几乎所有市面上的操作系统,windows,windows phone,Android,mac os,ios,linux等等大范围应用的pc或移动操作系统均运行着Java虚拟机,所以不论你的Java程序在那个系统上开发,都可以畅通无阻地运行在任意有Java虚拟机的操作系统上。
摘 要
本篇论文主要介绍如何实现驾驶员理论考试模拟系统,重点介绍了如何实现Web系统前台的界面、Web后台数据库的设计、Web系统中间结构的设计以及Web系统的测试过程。
本系统整体框架采用稳定性比较高的Struts框架,界面格式采用JSP页面格式,运用DIV、CSS和JS来设计界面的布局样式来布局页面。并且整个系统采用Java Web网站开发技术以Java编程来实现。系统实现的功能有自动生成试卷、在线考试、自动评分、错题集生成以及错题训练,在线用户添加、用户更新、用户删除、试题编辑和试题添加。
本系统在MyEclipse 10、JDK 1.7、MySQL 5.6以及Tomcat7.0上开发和测试成功。系统人机交互性友好,易于操作,并且界面美观。
关键字:JavaWeb在线考试系统StrutsJSPJavaMySQL
目 录
第1章 引言 1
1.1 课题的研究背景 1
1.2 课题的研究目的和目标 1
1.2.1 课题目的 1
1.2.2 课题预期目标 2
1.3 课题的研究方法及其内容 2
1.3.1 研究方法 2
1.3.2 研究内容 3
第2章 与系统开发相关技术研究 4
2.1 系统环境 4
2.1.1 运行环境 4
2.2.1 开发环境 4
2.2 编程语言 5
2.2.1 Java语言简介 5
2.2.2 Java语言在开发Web上的优势 6
2.3 系统采用的Web框架 6
2.3.1 Struts框架 6
2.3.2 Struts的配置文件 7
2.3.3 Web配置文件 7
2.3.4 servlet的介绍 8
2.3.5 过滤器的介绍 8
2.4 系统的物理结构 8
2.4.1 B/S模式简 8
2.4.2 B/S模式的优势 8
2.5 页面和页面美化 9
2.5.1 JSP 9
2.5.2 CSS和DIV 10
2.5.3 JQuery和JS 10
第3章 功能分析 11
3.1 功能模块描述 11
3.1.1 登陆模块 11
3.1.2 管理员模块 11
3.1.3 教员模块 12
3.1.4 学员模块 12
3.2 模块用例图表示 13
3.3 系统功能体系结构 16
第4章 总体设计 17
4.1 数据库设计 17
4.1.1 系统E-R图 17
4.1.2 各个表的详细设计 18
4.2系统类的设计 20
4.2.1 系统中的各个类 20
第5章 详细设计 25
5.1 项目配置 25
5.1.1 Web项目的具体配置 25
5.1.2 Struts框架的具体配置 26
5.2 页面设计 28
5.2.1 JSP页面 28
5.2.2 CSS样式风格设计 29
5.2.3 JS和锚点 29
5.3 系统编程 30
5.3.1 JDBC连接 30
5.3.2 DAO层类封装 32
5.3.3 Action业务处理设计 34
5.3.4 试卷生成 35
5.3.5 自动评分和错题生成 36
5.4 系统部分展示 38
5.4.1 管理员模块 38
5.4.2 教员模块 39
5.4.3 学员模块 39
第6章 系统测试 41
6.1 测试用例 41
6.2 测试结果和分析 42
6.2.1 单元测试结果和分析 42
6.2.2 集成测试结果和分析 42
第7章 总结 43
致谢 44
参考文献 45
第1章 引言
1.1 课题的研究背景
根据CNNIC(中国互联网络信息中心)的第33次普查(2014年1月6日),我国的互联网普及率已为45.8%,对普通老百姓来说互联网已经不再是陌生的东西。鉴于如此数目的互联网普及率,互联网教育的硬件基础已经具备。而另一方面,根据中国汽车工业协会最新出炉的2013年《中国汽车产业发展报告》显示,今年我国依旧是世界第一大的汽车产销国。并据京华时报2014年1月29日的报纸,其引述公安部发布的最新数据显示,我国的机动车数量突破2.5亿量,机动车驾驶员近2.8亿人。上述数据清晰的显示,按全国14亿人口总量,每个家庭4个人来估计,目前我国民众几乎每个家庭都有一个成员需要考取驾驶执照。并且有有一半的家庭已经普及了互联网。这可充分说明,网上驾驶执照考试系统的社会基础已经显现,人们不仅可以并且也希望能够在网上进行驾照理论考试模拟。所以我认为,综合目前的互联网普及率和我国的汽车保有量,我们很有必要开发一个可以帮助广大车友网民的在线驾照理论报名考试系统,以增强驾驶员的驾驶理论知识构建和谐的道路交通环境。
1.2 课题的研究目的和目标
1.2.1 课题目的
如今,由于internet的飞速发展,人们的生活正发生的深刻的变化。考试报名可以在网上报名。网上报名省去了传统报名要人到、证到的麻烦,实现网上报名,不仅让学员随时随地可以网上报名,而且可以省去了聘请传统报名的相关管理人员的费用。以往的各种笔试现在都可以变成在机考。驾照机考是为了实现传统考试不能实现的如下特点:
1. 方便快捷:看过答案做出选择后只要鼠标轻轻一点就完成答题任务。
2. 考试灵活:在线考试可以按知识点设置更多的考题,而且每个人的题目、选项不一样,这样可以更全面地考察所有考生对知识点的掌握和理解程度。
3. 节约:无纸化的考试,省却了传统笔试的纸张笔墨耗费和人工阅卷耗费,从而节约了组织考试的部分的人力物力财力,可以优化教学管理,提高教学质量。
4. 公平公正:机器化的考试评卷使得评卷的过程快速和公正,减少了外来人力对考试公平的干扰。使得考试得以更加公正化的进行。
5. 快速了解所有学员的学习掌握情况:系统可以给出统计数据,帮助分析题目的难度设置合不合理和学员在哪些方面比较强和弱,进行对症下药。
总之,驾照理论网上报名和机考是可行的而且非常有现实意义的。人们早已习惯在pc上面进行相关上网操作,pc端上网目前还是主流。所以开发一款在pc浏览器端上的驾照理论报名与考试系统可以让更多的驾考学员不用学习新的上网操作,方便学员和教练。
1.2.2 课题预期目标
1. 功能方面
通过这个系统,产生3种用户,每个用户都有会涉及到增、删、改、查的操作。系统管理员用户完成对各种用户的管理。教员用户完成对试题库的维护和管理。学员用户可以通过这个系统,进行快速考试,错题专项训练,查看过往分数。通过这个系统,使得学员能够成功完成驾照理论知识的学习,提高机动车驾驶人员的交通规则意识,从而从根本上提高我国道路的交通安全。
2. 用户友好程度
系统的整个UI(User Interface)设计,主要采用了左侧功能区,右侧显示区的设计方法。在功能区,上面放置着不同的菜单按钮,菜单按钮点击后,会下拉出该菜单下属的子按钮。当再次点击菜单按钮时,该菜单区域折叠起来,收起下拉出来的子按钮。在显示区方面,对于用户的增、删、改、查管理,该部分的UI主要是查看列表时候,鼠标放置某个用户记录上方,界面会上浮该用户的详细信息。在该界面,会显示出修改按钮,给予管理员修改该条记录。
1.3 课题的研究方法及其内容
1.3.1 研究方法
根据问卷调查法,通过设计问卷,了解用户对驾照考试系统的功能需求,共对三种用户进行调查,一个是管理员用户,一个是教员用户,一个是学员用户。
对于管理员用户,他最关心的对整个系统用户的管理,一般分为增加用户,修改用户,删除用户,他们一般不关心整个试题是什么样的,或者试卷是什么样的,他们只关心的是怎么管理好整个系统的用户,维护好系统的可用性。所以,只要设计好对用户的增删改查,就能满足管理员用户的需求。
对于教员用户来说,他们最最关心的只有驾照理论考试的试题,因为正作为教员,他们的职责就是教好下面的学员,以及保证试题的合理性。所以对于教员来说,除了“试题管理”这一块内容,还有“个人信息管理”和查询特定学员的成绩。
对于学员来说,他之所以要注册这个用户,他最关心的是能够学好驾驶理论,并且顺利通过考试。所以学员他们最需要的功能是“快速考试”、“错题训练”,这样学员可以充分利用这个驾校平台来完成自己的目标,这也是学员到这个系统注册成用户的根本理由。
1.3.2 研究内容
根据上述的系统需求,进行功能模块的设计。采用Java Web技术的相关技术,如Struts框架,JSP动态页面设计,CSS网页美化,JS网页控件设计,Java网络编程,以及sql数据库等进行系统的设计。首先用比喻来简单介绍一下这些技术。若把整个驾照理论考试系统比作一栋房子,上述这些技术都承担这不同的作用。比如,Struts框架在系统中起到框架支持的作用,它作为整体系统的总体骨架。JSP动态网页设计便承担起墙壁的作用,CSS网页美化和js网页控件则为墙壁上面的漂亮瓷砖。剩下的Java语言编程则为整个“房子”“建造”过程中的水泥,是所有技术的“粘合剂”。而SQL数据库,便是整个系统的数据基础,作为内在和地基,支撑起整栋房子。有了上述比较实际的比喻,相信读者都能初步了解这几个技术的作用了。我的研究内容就是,采用这些技术,完成之前调查出来的各种用户提出的功能,从而形成驾照报名考试系统。
第2章 与系统开发相关技术研究
2.1 系统环境
2.1.1 运行环境
本系统采用B/S(Browser/Server)模式,用户只需要通过互联网借助浏览器便可以登录系统。因此不用安装客户端,方便快捷。没有受到操作系统的限制,运行的操作系统,不仅可以是桌面操作系统如微软的windows视窗操作系统,也可以是Linux的各种衍生出来的操作系统ubuntu等等,只要上述操作系统有浏览器运行,便可以正常访问驾照理论考试系统。
2.2.1 开发环境
1. 硬件环境
电脑型号 戴尔 Inspiron N4010
CPU (英特尔)Intel(R) Core(TM) i3 CPU M 380 @ 2.53GHz(2533 Mhz)
主板 戴尔 0Y73YY
内存 4.00 GB (三星 PC3-10600 DDR3 SDRAM SO-DIMM 1333MHz)
主硬盘 500 GB (希捷 ST9500420AS)
显卡 AMD Radeon HD 6500M/5600/5700 Series (1024MB)
显示器 群创光电 HR1VT 140GW01 32位真彩色 60Hz
网卡 Intel(R) Centrino(R) Wireless-N 1000
表2- 1 硬件环境表
2. 软件环境
操作系统 Windows 7 Ultimate 64bit
JDK(Java Development Kit) 1.7.0_11 version
JRE(Java Runtime Environment) Build 1.7.0_11-b24
IDE(Integrated Development Environment) Myeclipes 10.0
数据库 MySQL 5.6.0
数据库管理工具 Navicat for MySQL 10.1.6 enterprise
Web Server Tomcat 7.0
网页设计软件 Dreamweaver CS5
表2-2 软件环境表
2.2 编程语言
2.2.1 Java语言简介
根据sun公司主页上对Java语言的简介,我用自己的话简单归纳为下属几点:
1. 首先Java是一门编程语言,它如今无处不在,不仅用于Web应用开发上,而且也用于移动开发,如安卓手机应用等等。Web应用和安卓手机应用是我们现今每个人接触最多的软件应用。
2. 它是一门面向对象的语言,可以轻松用于开发大中型Web企业应用系统。而且它还具有强大的可移植性。因为Java程序需要经过编译生成的是字节码,它对Java虚拟机JVM来说是一种解释型的语句,它会被安排在Java虚拟机上面运行。由于几乎所有市面上的操作系统,windows,windows phone,Android,mac os,ios,linux等等大范围应用的pc或移动操作系统均运行着Java虚拟机,所以不论你的Java程序在那个系统上开发,都可以畅通无阻地运行在任意有Java虚拟机的操作系统上。
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/qrs/212.html