jsp移动互联学车平台springmvc+mysql论文_第1页
jsp移动互联学车平台springmvc+mysql论文_第2页
jsp移动互联学车平台springmvc+mysql论文_第3页
jsp移动互联学车平台springmvc+mysql论文_第4页
jsp移动互联学车平台springmvc+mysql论文_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

移动互联网学车平台题目:院(系):专业:学生姓名:学号:指导教师:摘要随着计算机技术的飞速发展,学车系统也已进入信息化时代。为了使驾校管理更高效、更科学,决定开发移动互联网学车平台。本文采用结构化分析的方法,详细阐述了一个功能比较强大的互联网学车平台系统的前后台开发、操作流程和涉及的一些关键技术。首先进行了可行性分析,然后是系统分析,通过实际的业务流程调研,分析业务流程和系统的组织结构,完成了数据流分析和数据字典;然后是系统设计阶段主要完成了功能模块的划分、阐述了系统设计的思想、数据库的设计和系统设计的工具及技术。该阶段对本系统各个模块的功能进行了详细设计,形成了本系统的功能模块图;数据库设计时先进行了概念结构设计,然后进行了逻辑结构设计,最后完成了数据表的设计。根据前几个阶段的分析和设计,本系统在设计方面采用B/S模式,同时使用jsp技术进行基本页面的设计与功能实现,后台数据库选用mysql数据库。本系统的设计实施为移动互联网学车平台的运行做基础,为驾校信息管理工作提供良好的条件。关键词:B/S;结构化分析;学车信息管理;jsp

AbstractWiththerapiddevelopmentofcomputertechnology,drivingschoolhasenteredtheinformationage.Tomakedrivingschoolmanagementmoreefficient,morescientific,decidedtodevelopadrivingschoolinformationmanagementsystem.Inthispaper,structuralanalysis,afunctiondescribedindetailmorepowerfulinformationmanagementsystemfordrivingschoolbeforeandaftertheplatformdevelopment,operations,processes,andsomeofthekeytechnologiesinvolved.First,afeasibilityanalysis,andsystemanalysis,businessprocessthroughtheactualresearch,analyzebusinessprocessesandorganizationalstructureofthesystemtocompletethedataflowanalysisanddatadictionary;thencompletedthesystemdesignphaseismainlydividedintofunctionalmodules,elaboratedtheideaofthesystemdesign,databasedesignandsystemdesigntoolsandtechniques.Thisphaseofthesystemfunctionofeachmoduleindetailthedesign,formingafunctionalblockdiagramofthesystem;databasedesignfirsttestedtheconceptdesign,followedbyalogicdesign,andfinallycompletedthedatatabledesign.Accordingtothefirstfewstagesoftheanalysisanddesign,thesystemusedinthedesignofB/Smode,whilethebasictechnologyusedC#Designandrealizationofthepage,selectSQLServer2000databasebackenddatabase.Implementationofthesystemdesigninformationmanagementsystemforthedrivingschoolrunasafoundationforthedrivingschooltoprovidegoodinformationmanagementconditions.Keywords:B/S;structuralanalysis;drivingschoolinformationmanagement;C#

目录17203移动互联网学车平台 126417引言 5210781绪论 722361.1研究背景 7180371.2研究目的 7207951.3系统开发工具 8289311.4mysql介绍 8280471.5论文主要工作 9203992可行性分析及总体设计原则 1081162.1.1经济可行性 1049662.1.2技术可行性 10307812.1.3社会可行性 1121462.2总体设计原则 11247433需求分析 12122043.1业务流程分析 1295523.2系统层次方框图 1376143.3数据流图 13256193.4数据字典 1438823.5需求规格说明书 17114794概念结构设计 18274964.1系统全局实体图 18193544.2系统各实体图 18284835逻辑结构设计 20122175.1逻辑设计规范 20172745.2逻辑结构表 20170216编码 21106366.1登录设计 21202966.1.1登录界面 21306686.1.2登录流程 24291286.2登录首页 25100306.3试卷管理设计 26253696.4考试题目管理设计 2621626.5图片轮播管理设计 2712266.6必过攻略管理设计 3591006.7我的信息管理设计 36209366.8用户登录系统设计 36193996.9用户在线报名设计 36314756.10数据库连接池 37152937系统测试 38151037.1软件测试的重要性 38201617.2测试实例的研究与选择 3870627.3测试环境与测试条件 3999137.4系统运行情况 39211467.5系统评价 39165277.6系统测试结果 40219088结束语 417879谢辞 4231639参考文献 43引言随着科学技术的迅速发展,特别是近些年来,计算机技术以突飞猛进的速度渗透到了各个领域,成为人们生活中不可或缺的一部分。迄今,我国的信息化建设已取得长足进步,各行各业及政府部门的信息系统建设、传统技术的改造、基础设施建设都有较快发展。教育现代化、科学化管理是各个国家都十分重视的内容。网络技术和软件开发平台的发展,网络化系统渐趋热门,一般规模不大。但二十一世纪是信息化的社会,信息技术是驱动当代社会发展的催化剂,也是人们在社会竞争日益激烈的环境中生存和发展必须掌握的技能之一。我国推行“科教兴国”战略从一定意义上讲就是利用教育信息化推进整个国家的现代化。教师在这个宏伟战略中肩负着十分重大的责任和使命。是检验教育教学效果的重要手段之一,如何突破传统瓶颈、充分利用城域网,实现基于Internet网络的无纸化,对于提高工作效率,完善教育测评具体十分鲜明的现实意义。传统的手工管理不仅存在着查询困难、不易更新的缺点,而且在人力物力上又耗费极大。网上驾校网站系统的出现,克服了以上种种缺点,对学生这一流动性及大的群体的管理工作,提供了很大的帮助和支持。已得到了普遍的应用。随着我国经济的高速发展,我国的交通运输能力不断提高,越来越多的人开私家车到异地进行商务或者旅游等活动。在这一条件下,我国的车辆逐渐增多,最近几年,学车的人也是越来越多。为了减少交通事故的发生,车管所对驾驶员的交通知识考核起着至关重要的作用。随着信息量的逐步增加,繁杂的数据处理费时费力,单纯以人力进行的驾驶员理论考试的考核已经不适合驾驶理论考试的现状。现在是一个信息产业的时代,国家把信息产业作为增长国民经济的重要因数。在这样的环境下,先进的信息技术进行驾驶员理论考试已成为必要。互联网学车平台以计算机为操作工具,按照驾驶理论考试的流程,把驾驶理论考试的一些工作人员从繁琐的数据处理中解放出来,从而提高驾校的工作效率。驾驶理论考试系统把驾驶的理论试题保存于数据库中,通过计算机可以很方便地查询使用所需要的数据,而且这些操作全部由系统内部的代码完成。考生和系统管理员通过系统的友好界面,输入一些简单的数据便可操作。1绪论1.1研究背景随着计算机产业的迅速发展,电子计算机已广泛的应用于信息管理、文字处理、辅助设计、辅助教学及人们的日常生活中。互联网学车平台主要是针对驾校涉及驾校信息的一系列相关工作的管理,本系统的建立使驾校信息的管理更加规范化、系统化,查询手段更加便捷化。同时,联网学车平台也是实现驾校信息管理现代化和信息化的重要内容。近年来,随着驾校考生数量的逐渐增加,人工书写数据已经不能够处理如此庞大的数据。为了更好的适应信息时代的高效性,一个利用计算机来实现互联网学车平台工作的系统将必然诞生。基于这一点,设计了一个联网学车平台,用来就驾校信息进行管理,以便在最短的时间内,高效准确的完成整个驾校信息管理过程。基于对上述的认识,收集相关资料和数据,查阅有关文献及技术参数,对联网学车平台的实际需求等方面进行了调研,发现目前所采用的手工记录的方法进行管理存在以下几个方面的弊端:对象范围广,数据存储不易;填写的数据多,每个考生所填写的内容相当复杂,且大量数据重复;不易存档,成千上万的信息和堆积如山的单据对管理人员来说是一个负担,需要大量的文档资料。鉴于以上种种原因,互联网学车急需一种软件来代替手工操作来管理数据资料。计算机技术在现代管理中的应用,使计算机成为领导者和管理人员应用现代技术的重要工具。计算机辅助驾校管理活动,可以极大地增强管理者采集、处理信息的能力,从而有利于管理者及时决策。计算机系统能根据管理过程的变化情况,将原始数据、资料等进行加工、保存,管理人员可以在解决具体问题需要信息资料时,随时进行检索查询,了解整个互联网学车平台的动态情况,进行动态管理,从而有效的处理学车工作,实现对互联网学车平台的自动化,提高办学效率。1.2研究目的互联网学车平台的开发目的是使驾校的学车模式从手工记录转变成网上学车平台,为驾校管理人员提供方便条件。对驾校的实际情况进行调研之后,进行详细的需求分析,对现有的管理模式进行改进,开发出一套新型的互联网学车平台,从中领悟系统开发的思想,掌握系统开发的流程和方法。随着驾校信息系统的不断完善,驾校的管理将越来越依赖于信息化的管理。所以系统开发将围绕驾校的实际情况,使之能迅速适应互联网学车平台的需要。互联网学车平台的实施的现实意义:减少管理驾校的工作人员;管理人员可以随时浏览查看,而且更加直观;改变了以前工资手工记录的方式,电脑录入更加方便快捷;实现了学车平台的计算机化。1.3系统开发工具MyEclipse是比eclipse功能更加强大的一种企业级集成开发环境,主要用于Java、JavaEE以及移动应用的开发。MyEclipse的功能非常强大,应用领域更加广泛,在网站开发领域备受人们青睐。1.J2EE模型2.WEB开发工具3.EJB开发工具4.应用程序服务器的连接器5.J2EE项目部署服务6.数据库服务7.MyEclipse整合帮助以上所有功能,在Eclipse中都可以找到对应功能部件。这些功能的实现是利用一系列的插件。MyEclipse的结构上是模块化的,这样可以在不影响其他模块在任何单个模块扩展和升级。简单来说,MyEclipse的是Eclipse插件,J2EE的集成,支持代码编写,配置,测试和调试功能强大的开发环境。1.4mysql介绍MySQL是非结构化语言,用户可以在高层数据数据结构上工作,并且其语言简单,学习起来比较容易,其结构也简单,功能强大,存储信息量大,mysql是一种主要应用于数据的查询和编程,现在普遍存在的关系数据库有很多,而mysql数据库在其中得到了普遍的应用。使用mysql数据库在编程过程中带来了极大的方便,可以对数据进行广泛地查询,mysql数据库的应用并不需要用户了解其存储的方式,更不用掌握数据存放的方法,所以,mysql数据库是完全不同于其他数据的结构,并且不同数据库系统也可以使用相同的数据库进行输入和管理的接口,它的操纵对象是记录相应集合,mysql数据库的灵活性较强,功能也较强大,大多数情况下,在其他程序中实现某功能需要编写一大堆代码,而在SQL数据库中只需要一小段代码就可以实现功能,所以,mysql数据库的语言较简洁,数据库文件的扩展名是mysql。数据库,就是数据存储的储藏室,只不过数据是存储在计算机上的,而不是现实中的储藏室,数据的存放是按固定格式,而不是无序的,则定义就是:长期有固定格式,可以共享的存储在计算机存储器上。数据库管理主要包括数据表的建立,数据存储、修改和增加数据,为了使数据库系统能够正常运行,相关人员进行的管理工作。数据表的建立,可以对数据表中的数据进行调整,数据的重新组合及重新构造,保证数据的安全性。介于数据库的功能强大等特点,本系统的开发主要应用了mysql进行对数据的管理。1.5论文主要工作(1)获取需求:根据所掌握的需求资料,分析总结和提取需求,按照软件工程学的方法,编写需求规格说明书。(2)绘制系统层次方框图和数据流图:层次方框图分:前台和后台两部分,我的工作重点是:将后台收集的数据经过计算与加工,在前台充分的反映出当前水文的变化情况,以及未来可能出现的情况等。绘制三层数据流图:0层数据流图,顶层数据流图,1级数据流图。(3)编写数据字典:参考数据流图,编写与数据流图相匹配的数据字典。(4)概念结构设计:画出系统的全局E-R图和各实体的详细实体E-R图。(5)逻辑和物理结构设计:分析各实体的关系数据模型,创建表字段和索引等。(6)编码:分析和归纳每个模块的主要设计思想和核心代码。(7)测试和书写用户使用说明:安排合理的测试用例,对每个模块进行测试,然后编写使用说明。2可行性分析及总体设计原则可行性分析也称为可行性研究,是在调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会等方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。下面将分别从经济、技术、社会三个方面对互联网学车平台的建设进行分析和研究。2.1.1经济可行性通过对本系统的分析研究,主要从成本和效益两方面进行分析其经济可行性:(1)支出本系统的设计是为了完成毕业设计,所以用到的都是一些开源软件或在试用期的软件,所以开发系统软件费用不用考虑。如果本系统运行,需要把用适用版的软件编写的代码用一些开源工具编译一次即可,所以运行的软件费用也不存在。在硬件方面,开发本系统只需要一台电脑,所以开发系统硬件费用也不用考虑。综上所述,本系统的支出成本很少,可以承受。(2)效益本系统的效益可以从经济效益和社会效益两方面考虑。其经济效益主要来源于系统的广告收入,其收入会远超过系统的开发和运行成本。其社会效益包括系统投入运行后可以基本满足所有用户的需求,减少用户的查询时间,提高查询效率。由以上分析可知,驾校信息管理系统在经济上是可行的。2.1.2技术可行性根据驾校提出的系统功能、性能及实现系统的各种约束条件,根据新系统目标来衡量所需的技术是否具备,本系统是一个数据库管理和查询的系统,现有的技术已较为成熟,硬件、软件的性能要求、环境条件等各项条件良好,估计利用现有技术条件应完全可以达到该系统的功能目标。同时,考虑给予的开发期限也较为充裕,预计系统是可以在规定期限内完成开发的。由以上分析可知,驾校信息管理系统的开发在技术上是可行的。2.1.3社会可行性本系统的社会可行性主要从法律因素、用户使用可行性两方面进行研究。(1)法律因素本系统是根据互联网学车平台的实际工作情况开发研制的,是通过大量的调研得出的,系统的软件设计是在独立的环境下完成的,无可供抄袭的软件产品,也不存在盗版侵权的问题,是完全合法的软件。本系统的开发是依照法律程序明确委托方与开发方的责任,没有违反中华人们共和国的任何法律条款,使用者可以放心使用,因此法律上是有保障的。(2)用户使用可行性本系统对用户的要求,除了需要具备在MicrosoftWindows平台上使用个人电脑的知识外,并不需要特别的技术能力。使用系统的管理员,在投入使用前,无需对操作系统的人员进行培训。这样既减少投入成本又简化了操作环节。由以上分析可知,本系统具有社会可行性。2.2总体设计原则本系统为了设计、实现和后期维护的方便,以及系统用户使用的便利,所以必须采取一定的设计原则。其主要设计原则有:简单性:在实现系统的功能的同时,尽量让系统操作简单易懂,这对于一个系统来说是非常重要的。针对性:本系统设计是针对互联网学车平台的需求定向开发设计,所以具有专业突出和很强的针对性。实用性:要求本系统能够满足驾校管理人员的需要,因此具有良好的实用性。一致性:页面整体设计风格以及命名规则的一致性:整体页面布局和用图用色风格及变量、类名和其他元素的命名规则保持一致。功能一致性:完成同样的功能应该尽量使用同样的元素。元素风格一致性:界面元素的美观风格、摆放位置在同一个界面和不同界面之间都应该是一致的。变量命名规则的一致性:变量应该用统一的规则进行命名,做到任意变量均能从上下文推断其义。先进性:本系统采用jsp技术、mysql等被广泛采用系统开发技术和数据库,因此本设计具有良好的先进性,具体表现在其具有良好的可扩展性,可开发性。

3需求分析3.1业务流程分析在进行业务流程分析时,需要按照原有信息流动过程,逐个地调查分析所有环节的处理业务、处理内容、处理顺序和对处理时间的要求,弄清各个环节需要的信息、信息来源、流经去向、处理方法、计算方法、提供信息的时间和信息形态(报告、报单、屏幕显示)等。业务流程分析可以帮助开发者了解该业务处理过程,发现和处理系统调查工作中的错误和疏漏。业务流程分析是通过业务流程图来进行,即用一些规定的符号及连线来表示某个具体业务处理过程[5]。具体业务流程如图3.1所示。图3.1业务流程图3.2系统层次方框图本系统的层次方框图如图3.2所示。后台登录试卷管理视频模拟考试考试题目管理理驾考社区论坛用户管理前台后台登录试卷管理视频模拟考试考试题目管理理驾考社区论坛用户管理前台必过攻略个人中心系统页面考题详情管理用户操作管理员操作退出系统页面退出登录轮播图管理视频讲解管理比过攻略管理驾校管理预约练车管理考题详解预约练车预约练车图3.2系统层次方框图3.3数据流图数据流程是指数据在系统中产生、传输、加工处理、使用、存储的过程[6]。数据流程分析是把数据在现行系统内部的流动抽象的独立起来,舍去了具体组织机构、信息载体、处理工具、物质、材料等,单从数据流动过程来考查实际业务的数据处理模式。数据流程与数据流程分析是今后建立数据库系统和设计功能模块处理过程的基础。描述数据流程的工具是数据流程图以及其附带的数据字典、处理逻辑等图表。其中数据流程图是描述系统逻辑模型的主要工具,它以少数几种符号综合地反映出信息在系统中的流动、存储和传递。3.4数据字典通过对系统数据流的分析,接下来用数据字典描述数据流图中一些主要的数据元素条目、数据流、处理过程、数据存储和外部实体。数据元素条目如表3.1所示。表3.1数据元素学员编号调入年份数据元素条目总编号:1-101学员编号调入年份数据元素条目总编号:1-101编号:101名称:学员编号XXX说明:学员的编号数据值类型:离散长度:50有关数据结构:学员表 如:123数据结构条目如表3.2所示。表3.2数据结构数据结构条目数据结构条目名称:学员表说明:创建学员信息记录似的数据 总编号:2-01结构: 编号:01 学员编号 有关数据流、数据存储:出生日期 学员管理、学员信息 卡号 数量:每年约200份 姓名 性别 地址 年龄 电话……. 数据流条目如表3.3所示:表3.3数据流数据流条目数据流条目名称:录入考试信息 总编号:3-10说明:将考试信息存储到考试信息存储 编号:10数据流来源:考试管理数据流去向:考试信息 流通量:10份/周包含的数据结构: 考试信息数据存储条目如表3.4所示:表3.4数据存储数据存储条目数据存储条目名称:学员信息 总编号:4-01说明:存储学员信息 标号:结构: 编号 姓名 性别出生日期…….有关的数据流: 信息量:400份/月 处理过程条目如表3.5所示:表3.5处理过程处理过程条目处理过程条目名称:考试管理 总编号:5-15说明:管理考试信息。 编号:输入:考试管理输出:考试信息表处理:将考试管理的后的记录存储到考试表中。外部实体条目如表3.6所示:表3.6外部实体外部实体条目外部实体条目名称:管理员 总编号:6-01说明:管理员 编号:001输入数据流: 个数:1个输出数据流:由于论文篇幅的限制,不在此一一列举,其他所有的数据字典条目都是根据数据流图绘制的。3.5需求规格说明书(1)编写目的对需求分析进行补充说明,详细说明需求分析的部分细节、统一规范格式和建立需求约束规范等。(2)对功能的规定在数据流图与数据字典当中,已有了分析。(3)对性能的规定系统界面友好,具有一定的健壮性,录入数据出错时,有良好的错误提示,系统能够保证长时间运行等。(4)运行环境的规定eq\o\ac(○,1)设备:为了保证数据库中数据的完整性和系统24小时全天候运行,需要两台计算机或服务器轮流更换。eq\o\ac(○,2)支持软件:系统支持:Windows7等。开发工具:myeclipse版本、mysql数据库。

4概念结构设计4.1系统全局实体图E-R模型的组成元素有:实体、属性、联系。E-R模型用E-R图表示。实体是用户工作环境中所涉及的事务,属性是对实体特征的描述。(1)模型中的实体相当于实体集、一个表,而不是单个实体或表中的一行。实体用矩形框表示,实体名称标注在矩形框内。用菱形表示实体间的联系,菱形框内写上联系名,用无向边把菱形分别与有关实体相连接,在无向边旁标上联系的类型。(2)属性是实体的性质。用椭圆框表示,与实体之间用一条线相连表的主码是关键属性,关键属性项加下划线。(3)各子系统模块中主键相同的字段之间存在着相互关联的关系。(4)在程序中实现对他们的完整性和一致性控制。从数据需求分析中得出系统的实体属性图,遵循三范式原则,对实体之间的依赖关系进行了整合,得出系统E-R图。4.2系统各实体图图5-1用户E-R图图5-2考试E-R图图5-3考试答案E-R图图5-4攻略信息E-R图5逻辑结构设计5.1逻辑设计规范数据库逻辑设计就是将E-R图转换成关系模型的过程,即将所有实体和关系转换成一系列的关系模式,转换过程中常见规则有:(1)一个实体型转换成一个关系模式。(2)一个一对一的关系模型可转换成一个独立的关系模式,也可与任意一端对应的关系模式合并。(3)一个一对多的联系可以转换成一个独立的关系模式,也可与多的那一端对应的关系模式合并。(4)一个多对多的联系可以转换成一个关系模式。5.2逻辑结构表经过数据库系统分析和逻辑设计后,数据库的结构已经非常清晰,首先在ysql中建立一个数据库a2。然后,分别建立15个表,每个表与逻辑设计中一种的关系模式相对应。下面是每个数据库表中的属性,包括属性列的名称、数据类型、长度、是否为空和备注说明等内容,下面主要对个别数据库表进行介绍:(1)用户信息表(cuatomer)表5-1用户信息表字段名字段类型字段大小是否为空字段说明idInt4否用户ID自动编号(主键)UsenameVarchar20否用户名PasswordVarchar20否密码customernameVarchar20否姓名phoneVarchar32否电话SexInt4否性别0:男1:女(默认为:0)agedatetime8否年龄addressvarchar10否地址idcardVarchar14是身份证insertdateVarchar6是时间headpinVarchar6是头像(2)考试信息表(exam)表5-2考试信息表字段名字段类型字段大小是否为空字段说明idInt4否考生ID自动编号(主键)examnameVarchar20否考试题目showdateInt4否时间statusdatetime8否状态(3)评论表(pinglun)表5-3评论表字段名字段类型字段大小是否为空字段说明idInt4否评论ID自动编号(主键)wdxxiddatetime8否回复编号customeriddatetime8否客户编号contentInt4否内容insertdatadecimal8否时间(4)视频表(radios)表5-4视频表字段名字段类型字段大小是否为空字段说明idInt4否交易ID自动编号(主键)rediosdatetime8否视频题目radiosurlVarchar20否连接radioscontentVarchar20否内容datedecimal8否时间6编码6.1登录设计6.1.1登录界面此模块主要功能是用于登录本系统,不同权限的用户登录本系统会进入不同的管理模块界面,因为在后台对该用户进行的判断,首先将从前台页面提交的用户名和密码进行接受,之后在后台进行处理,按照用户名在数据库中进行查询如果查到该用户则将该用户的权限和密码全都取出来分别赋给两个字符串变量,判断从数据库中读出的密码与登录时输入的密码是否配比上,若两个密码相同则根据权限的值进入相应的页面,否则输出密码错误。若用户未被管理员分配好权限那么也是无法登录本系统的。图6.1登录页面关键代码:namespace互联网学车平台{ publicpartialclassLoginDialog:Form{ publicDataModel.UsersRowCurrentUser{get;set;} publicboolLockScreen{get;set;} publicLoginDialog(){ InitializeComponent(); } privatevoidbtnLogin_Click(objectsender,EventArgse){ if(this.LockScreen&&this.CurrentUser!=null){ if(this.CurrentUser.LoginPassword.Equals(this.txtPassword.Text)){ this.Close(); }else{ MessageBox.Show("密码错误!","错误",MessageBoxButtons.OK,MessageBoxIcon.Error); } }else{ varta=newDataModelTableAdapters.UsersTableAdapter(); vart=ta.GetDataForLogin(this.txtLoginName.Text,this.txtPassword.Text); if(t.Rows.Count>0){ this.CurrentUser=t[0]; this.Close(); }else{ MessageBox.Show("名称和密码错误!","错误",MessageBoxButtons.OK,MessageBoxIcon.Error); } } }6.1.2登录流程图6.2用户登录流图

6.2登录首页 管理员登录本系统后,可以进行个人中心、用户管理、考试题目管理、轮播图管理、视频讲解管理、必过攻略管理等功能进行操作。如下图所示:图6.3登录首页关键代码: 6.3试卷管理设计管理员登录系统后,可以管理试卷信息。关键代码:6.4考试题目管理设计关键代码:6.5图片轮播管理设计关键代码:partialclassAddExamInfoForm{ privateSystem.ComponentModel.IContainercomponents=null; protectedoverridevoidDispose(booldisposing){ if(disposing&&(components!=null)){ components.Dispose(); } base.Dispose(disposing); } #regionWindowsFormDesignergeneratedcode privatevoidInitializeComponent(){ ponents=newSystem.ComponentModel.Container(); System.ComponentModel.ComponentResourceManagerresources=newSystem.ComponentModel.ComponentResourceManager(typeof(AddExamInfoForm)); this.label1=newSystem.Windows.Forms.Label(); this.cboStudents=newSystem.Windows.Forms.ComboBox(); this.customersBindingSource=newSystem.Windows.Forms.BindingSource(ponents); this.dataModel=newDataModel(); this.customersTableAdapter=new统.DataModelTableAdapters.CustomersTableAdapter(); this.label2=newSystem.Windows.Forms.Label(); this.dtpExamDate1=newSystem.Windows.Forms.DateTimePicker(); this.bsExam=newSystem.Windows.Forms.BindingSource(ponents); this.dataModel1=new驾校信息管理系统.DataModel(); this.label3=newSystem.Windows.Forms.Label(); this.label4=newSystem.Windows.Forms.Label(); this.label5=newSystem.Windows.Forms.Label(); this.label6=newSystem.Windows.Forms.Label(); this.label7=newSystem.Windows.Forms.Label(); this.txtExamScore1=newSystem.Windows.Forms.TextBox(); this.chkPass1=newSystem.Windows.Forms.CheckBox(); this.dtpExamDate2=newSystem.Windows.Forms.DateTimePicker(); this.txtExamScore2=newSystem.Windows.Forms.TextBox(); this.chkPass2=newSystem.Windows.Forms.CheckBox(); this.dtpExamDate3=newSystem.Windows.Forms.DateTimePicker(); this.txtExamScore3=newSystem.Windows.Forms.TextBox(); this.chkPass3=newSystem.Windows.Forms.CheckBox(); this.btnSave=newSystem.Windows.Forms.Button(); this.btnClose=newSystem.Windows.Forms.Button(); ((System.ComponentModel.ISupportInitialize)(this.customersBindingSource)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.dataModel)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.bsExam)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.dataModel1)).BeginInit(); this.SuspendLayout(); this.label1.AutoSize=true; this.label1.Location=newSystem.Drawing.Point(60,20); this.label1.Name="label1"; this.label1.Size=newSystem.Drawing.Size(41,12); this.label1.TabIndex=0; this.label1.Text="学员:"; this.cboStudents.DataSource=this.customersBindingSource; this.cboStudents.DisplayMember="Name"; this.cboStudents.DropDownStyle=System.Windows.Forms.ComboBoxStyle.DropDownList; this.cboStudents.FormattingEnabled=true; this.cboStudents.Location=newSystem.Drawing.Point(107,12); this.cboStudents.Name="cboStudents"; this.cboStudents.Size=newSystem.Drawing.Size(123,20); this.cboStudents.TabIndex=1; this.cboStudents.ValueMember="Id"; this.cboStudents.SelectedIndexChanged+=newSystem.EventHandler(this.cboStudents_SelectedIndexChanged); this.customersBindingSource.DataMember="Customers"; this.customersBindingSource.DataSource=this.dataModel; this.dataModel.DataSetName="DataModel"; this.dataModel.SchemaSerializationMode=System.Data.SchemaSerializationMode.IncludeSchema; this.customersTableAdapter.ClearBeforeFill=true; this.label2.AutoSize=true; this.label2.Location=newSystem.Drawing.Point(12,47); this.label2.Name="label2"; this.label2.Size=newSystem.Drawing.Size(89,12); this.label2.TabIndex=2; this.label2.Text="理论考试时间:"; this.dtpExamDate1.DataBindings.Add(newSystem.Windows.Forms.Binding("Value",this.bsExam,"ExamDate1",true)); this.dtpExamDate1.Location=newSystem.Drawing.Point(107,38); this.dtpExamDate1.Name="dtpExamDate1"; this.dtpExamDate1.Size=newSystem.Drawing.Size(123,21); this.dtpExamDate1.TabIndex=3; this.bsExam.DataMember="Customers"; this.bsExam.DataSource=this.dataModel1; this.dataModel1.DataSetName="DataModel"; this.dataModel1.SchemaSerializationMode=System.Data.SchemaSerializationMode.IncludeSchema; this.label3.AutoSize=true; this.label3.Location=newSystem.Drawing.Point(12,74); this.label3.Name="label3"; this.label3.Size=newSystem.Drawing.Size(89,12); this.label3.TabIndex=4; this.label3.Text="理论考试成绩:"; this.label4.AutoSize=true; this.label4.Location=newSystem.Drawing.Point(36,101); this.label4.Name="label4"; this.label4.Size=newSystem.Drawing.Size(65,12); this.label4.TabIndex=5; this.label4.Text="桩考时间:"; this.label5.AutoSize=true; this.label5.Location=newSystem.Drawing.Point(36,128); this.label5.Name="label5"; this.label5.Size=newSystem.Drawing.Size(65,12); this.label5.TabIndex=6; this.label5.Text="桩考成绩:"; this.label6.AutoSize=true; this.label6.Location=newSystem.Drawing.Point(36,155); this.label6.Name="label6"; this.label6.Size=newSystem.Drawing.Size(65,12); this.label6.TabIndex=7; this.label6.Text="路考时间:"; this.label7.AutoSize=true; this.label7.Location=newSystem.Drawing.Point(36,182); this.label7.Name="label7"; this.label7.Size=newSystem.Drawing.Size(65,12); this.label7.TabIndex=8; this.label7.Text="路考成绩:"; this.txtExamScore1.DataBindings.Add(newSystem.Windows.Forms.Binding("Text",this.bsExam,"Score1",true)); this.txtExamScore1.Location=newSystem.Drawing.Point(107,65); this.txtExamScore1.Name="txtExamScore1"; this.txtExamScore1.Size=newSystem.Drawing.Size(63,21); this.txtExamScore1.TabIndex=9; this.chkPass1.AutoSize=true; this.chkPass1.DataBindings.Add(newSystem.Windows.Forms.Binding("Checked",this.bsExam,"IsExamPass1",true)); this.chkPass1.Location=newSystem.Drawing.Point(182,67); this.chkPass1.Name="chkPass1"; this.chkPass1.Size=newSystem.Drawing.Size(48,16); this.chkPass1.TabIndex=10; this.chkPass1.Text="通过"; this.chkPass1.UseVisualStyleBackColor=true; this.dtpExamDate2.DataBindings.Add(newSystem.Windows.Forms.Binding("Value",this.bsExam,"ExamDate2",true)); this.dtpExamDate2.Location=newSystem.Drawing.Point(107,92); this.dtpExamDate2.Name="dtpExamDate2"; this.dtpExamDate2.Size=newSystem.Drawing.Size(123,21); this.dtpExamDate2.TabIndex=11; this.txtExamScore2.DataBindings.Add(newSystem.Windows.Forms.Binding("Text",this.bsExam,"Score2",true)); this.txtExamScore2.Location=newSystem.Drawing.Point(107,119); this.txtExamScore2.Name="txtExamScore2"; this.txtExamScore2.Size=newSystem.Drawing.Size(63,21); this.txtExamScore2.TabIndex=12; this.chkPass2.AutoSize=true; this.chkPass2.DataBindings.Add(newSystem.Windows.Forms.Binding("Checked",this.bsExam,"IsExamPass2",true)); this.chkPass2.Location=newSystem.Drawing.Point(182,121); this.chkPass2.Name="chkPass2"; this.chkPass2.Size=newSystem.Drawing.Size(48,16); this.chkPass2.TabIndex=13; this.chkPass2.Text="通过"; this.chkPass2.UseVisualStyleBackColor=true; this.dtpExamDate3.DataBindings.Add(newSystem.Windows.Forms.Binding("Value",this.bsExam,"ExamDate3",true)); this.dtpExamDate3.Location=newSystem.Drawing.Point(107,146); this.dtpExamDate3.Name="dtpExamDate3"; this.dtpExamDate3.Size=newSystem.Drawing.Size(123,21); this.dtpExamDate3.TabIndex=14; this.txtExamScore3.DataBindings.Add(newSystem.Windows.Forms.Binding("Text",this.bsExam,"Score3",true)); this.txtExamScore3.Location=newSystem.Drawing.Point(107,173); this.txtExamScore3.Name="txtExamScore3"; this.txtExamScore3.Size=newSystem.Drawing.Size(63,21); this.txtExamScore3.TabIndex=15; this.chkPass3.AutoSize=true; this.chkPass3.DataBindings.Add(newSystem.Windows.Forms.Binding("Checked",this.bsExam,"IsExamPass3",true)); this.chkPass3.Location=newSystem.Drawing.Point(182,175); this.chkPass3.Name="chkPass3"; this.chkPass3.Size=newSystem.Drawing.Size(48,16); this.chkPass3.TabIndex=16; this.chkPass3.Text="通过"; this.chkPass3.UseVisualStyleBackColor=true; this.btnSave.Location=newSystem.Drawing.Point(38,200); this.btnSave.Name="btnSave"; this.btnSave.Size=newSystem.Drawing.Size(75,23); this.btnSave.TabIndex=17; this.btnSave.Text="保存(&S)"; this.btnSave.UseVisualStyleBackColor=true; this.btnSave.Click+=newSystem.EventHandler(this.btnSave_Click); this.btnClose.Location=newSystem.Drawing.Point(119,200); this.btnClose.Name="btnClose"; this.btnClose.Size=newSystem.Drawing.Size(75,23); this.btnClose.TabIndex=18; this.btnClose.Text="关闭(&C)"; this.btnClose.UseVisualStyleBackColor=true; this.btnClose.Click+=newSystem.EventHandler(this.btnClose_Click); this.AutoScaleDimensions=newSystem.Drawing.SizeF(6F,12F); this.AutoScaleMode=System.Windows.Forms.AutoScaleMode.Font;System.Windows.Forms.FormStartPosition.CenterParent; this.Text="录入考试信息"; this.Load+=newSystem.EventHandler(this.AddExamInfoForm_Load); ((System.ComponentModel.ISupportInitialize)(this.customersBindingSource)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.dataModel)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.bsExam)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.dataModel1)).EndInit(); this.ResumeLayout(false); this.PerformLayout(); }6.6必过攻略管理设计关键代码:6.7我的信息管理设计其实现代码:6.8用户登录系统设计6.9用户在线报名设计6.10数据库连接池本系统所采用的开发模式是:连接数据库需要用到的代码如下:<?xmlversion="1.0"encoding="utf-8"?><configuration><configSections></configSections><connectionStrings><addname="互联网学车平台.Properties.Settings.DriverSchoolConnectionString"connectionString="DataSource=.;InitialCatalog=DriverSchool;PersistSecurityInfo=True;UserID=sa"providerName="System.Data.SqlClient"/></connectionStrings></configuration>

7系统测试测试是开发时期最后一个阶段,是保证软件质量的重要手段。软件测试就是在受控制的条件下对系统或应用程序进行操作并评价操作结果的过程,所谓控制条件应包括正常条件与非正常条件。软件测试过程中应该故意地去促使错误的发生,也就是事情在不该出现的时候出现或者在应该出现的时候没有出现。从本质上说,软件测试是"探测",在“探测”中发现软件的毛病。7.1软件测试的重要性软件测试在软件生命周期中占据重要的地位,在传统的瀑布模型中,软件测试学仅处于运行维护阶段之前,是软件产品交付用户使用之前保证软件质量的重要手段。近来,软件工程界趋向于一种新的观点,即认为软件生命周期每一阶段中都应包含测试,从而检验本阶段的成果是否接近预期的目标,尽可能早的发现错误并加以修正,如果不在早期阶段进行测试,错误的延时扩散常常会导致最后成品测试的巨大困难。事实上,对于软件来讲,不论采用什么技术和什么方法,软件中仍然会有错。采用新的语言、先进的开发方式、完善的开发过程,可以减少错误的引入,但是不可能完全杜绝软件中的错误,这些引入的错误需要测试来找出,软件中的错误密度也需要测试来进行估计。测试是所有工程学科的基本组成单元,是软件开发的重要部分。自有程序设计的那天起测试就一直伴随着。统计表明,在典型的软件开发项目中,软件测试工作量往往占软件开发总工作量的40%以上。而在软件开发的总成本中,用在测试上的开销要占30%到50%。如果把维护阶段也考虑在内,讨论整个软件生存期时,测试的成本比例也许会有所降低,但实际上维护工作相当于二次开发,乃至多次开发,其中必定还包含有许多测试工作。7.2测试实例的研究与选择程序测试的主要方法分为两大类,白盒测试和黑盒测试。白盒测试:一种是以程序的内部逻辑结构为依据而设计测试用例的方法,因而又称结构测试或玻璃盒测试,将软件看成一个透明的白盒子,按照程序的内部结构和处理逻辑来选定测试用例,对软件的逻辑路径及过程进行测试,检查它与设计是否相符[17]。白盒测试就是要选取足够的测试用例,对源代码实行比较充分的覆盖,以便尽可能多地发现程序中的错误。主要有两种方法:一种称为逻辑覆盖法,另一种称为路径覆盖法。黑盒测试:也称功能测试,数据驱动测试等,它将待测对象堪称是一个黑盒子,在完全不考虑程序的内部结构和特性的情况下,只依据规格说明书检查程序的功能是否能正常使用。黑盒测试主要是根据输入条件和输出条件的确定测试数据,来检查程序是否能产生正确的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论