资源描述:
《毕业设计(论文):出租车公司出租车信息管理系统》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
出租车公司出租车信息管理系统院系专业班级学号姓名指导教师负责教师 毕业设计(论文)摘要沈阳志远出租车公司出租车信息管理系统是旨在有效管理出租车及驾驶员信息的软件。本文首先介绍本题目背景和意义;通过现社会市场情况,分析讨论出租车行业的发展趋势;并从工作时间,工作量及人力物力资源等方面分析本系统对公司的影响,指出出租车信息管理系统能提高管理人员的工作效率。然后,分析讨论了本软件的功能强大之处,并结合当前经济及技术的发展介绍了本软件以后的可扩充性及可推广性。并针对沈阳志远出租车公司工作效率不高的现实提出了改造公司工作方式和自动化的关键因素。最后介绍了本系统利用JBuilder2005工具使用java语言并以SQLServer2000为本系统的开发工具的完美结合。关键词:信息管理系统;自动化;SQLServer2000IV 毕业设计(论文)AbstractShenYangZhiYuan'sfor-rentcarcompanyrentcaraninformationamanagementsystemisthesoftwarethattheaimiseffectivelymanagingtorentcarandpilot'sinformation.Thistextintroducesthesubjecteyesbackgroundandmeaningfirst;Passnowasocialmarketcircumstance,analyzethedevelopmenttrendofthediscussionrentgarageindustry;Combineanalyticalfromtheworktime,workloadandmanpowermaterialresourcesresourcesetc.thistheinfluenceofthesystemuponthecompany,pointoutthatthefor-rentcarinformationmanagementsystemcanraisethemanager'sworkefficiency.Then,analysisdiscussedthefunctionstrongplaceofthissoftware,andcombinedatpresentaneconomicandtechnicaldevelopmenttointroducethissoftwarelaterofcanenlargesexandcanexpandsex.AlsoaimedatShenYangZhiYuan’sfor-rentthecarcompanynothighrealityoftheworkefficiencytoputforwardareformationcompanyaworkthekeyfactorofwayandautomation.FinallyintroducedthissystemtomakeuseofJBuilder2005javalanguageofthetoolusagescombinewithSQLServer2000forthedevelopmenttoolofthissystemofperfectcombine.Keywords:InformationManagementSystem;Automate;SQLServer2000IV 毕业设计(论文)目录引言11概述21.1课题研究意义21.2课题目的22系统概述32.1系统现状32.2系统开发方法32.3项目背景42.4用户特征43市场调研及可行性分析53.1需求分析53.2经济可行性分析53.3技术可行性分析54系统分析64.1系统的需求分析64.2数据流图与数据字典64.2.1数据流图64.2.2数据字典75系统总体设计105.1软件平台的确定105.2系统的层次及功能105.2.1设计思想105.2.2系统H图115.2.3系统E-R图125.2.4系统流程图126详细设计136.1数据库设计13IV 毕业设计(论文)6.1.1数据需求分析136.1.2数据库的实现146.2系统的主要界面及代码176.2.1登录模块176.2.2车辆管理模块186.2.3驾驶员管理模块256.2.4车辆维修管理模块266.2.5车辆违章管理模块276.2.6车辆缴费管理模块356.2.7系统维护模块366.2.8帮助模块386.2.9退出模块397系统的测试及运行407.1测试计划407.1.1测试方案407.1.2测试项目与进度407.2测试项目说明407.2.1测试用例设计407.2.2测试结果评价467.2.3测试分析结论46参考文献47小结48致谢49IV 沈阳航空工业学院毕业设计(论文)引言在上世纪80年代到90年代中期,城市出租车司机还是一个高收入阶层。来自中国道路运输协会的统计数字显示,截至目前,全国共有出租车从业人员约200万人。随着我国经济的发展,出租车营运一度十分赚钱,但由于一辆出租车的价钱也不是很低,人们没有多余的资金投入当中,所以不是每个人都能买得起车,而且大部分人也不愿一直从事该行业。但有的人利用空闲时间在别处租台出租车来挣钱,这样不但不需要很大的投入,也没有任何风险,且可有一部分的额外的收。随着时间的推移,越来越多的人认识到了这一点。当然有租车的也就得有雇主,这些雇主也感觉到了,自己不喜欢工作时就可以把车租出去,这样不但车辆不会白白折旧,自己也可以再工作,还能增加收入,当他们感受到时就慢慢的扩大规模,还因种种原因人们想到了是否可以成立一个出租车公司,让人们可以以出租的方式租用车辆。但手工的管理实在是一个繁重的任务,不但工作量大,而且也容易出错。随着软件业的相应飞速发展,出租车管理信息系统也相应的越来越多,功能也越来越健全。不仅国内如此,具调查在美国纽约约有38000名出租车司机,而且随着出租车数量的增加,出租车公司也越来越多,且每个公司也都有自己很完善的管理系统。所以,随着经济及软件业的飞速发展,出租车信息管理系统也很有发展前景。49 沈阳航空工业学院毕业设计(论文)1概述1.1课题研究意义出租车管理系统在当今软件业来说并不是十分抢手,尤其是在我国,虽然说我国的出租车行业十分的火热,但大多出租车都是个人所有,或是将自己的车出租出去,这样不但不会耽误自己的工作,还可以同时再发展自己的第二产业。随着我国经济的发展,近年来出租车也越来越便宜,人们已经不需要用太多的钱就可以买一款新的出租车了,且人民的生活水平也提高了,人们已经不甘心只靠工作的薪水来提高收入,有的人利用下班后的时间跑出租,即能有效的利用空闲时间,也能增加收入。随着时间的增长,越来越多的人发现了这一快速挣钱的好方法,越来越多的人在不断的购买出租车,也有越来越多的人在租出租车。但是要管理出租车的工作量太大了,而且要修改出租车的信息也非常麻烦,管理者要结算收入时也很费时费力。虽说人们还没有意识到这一问题,也没有想到如何去解决,但我相信,在不久的将来出租车信息管理软件一定会被看好。所以,随着经济及软件业的飞速发展和时间的推移,出租车管理系统的开发将会为出租车公司提高很大的工作效率。1.2课题目的应本次毕业设计要求,为沈阳志远出租公司设计的出租车信息管理软件,该系统的开发和运用主要是为了方便管理者对本公司内出租车辆信息的管理。使出租车公司从原有的纸上办公方式转换为数字化的信息管理方式,日常工作系统化、规范化、自动化,既方便了驾驶员的查询,也为工作人员节省了很多宝贵的工作时间,工作起来能更加的方便,大大提高工作效率和准确性,降低了工作强度,为出租车公司提供了一个现代化的管理手段。49 沈阳航空工业学院毕业设计(论文)1系统概述1.1系统现状现今,沈阳志远出租车公司的车辆管理还是人工操作,每天管理员都要进行大量的手动数据整理。每隔一段时间都会有车辆买进、还车与出租,每到这时管理员都要进行大量的数据更新,而且工作效率很低,往往需要很长时间才能完成。但是,有了这款出租车信息管理软件的出台,将会大大改善这一现状。因为本系统功能强大且齐全,能为管理员节省工作时间,提高工作效率,也节省了很多的人力资源。本系统主要有以下功能:能够实现对新进出租车辆信息的添加、修改及删除,能够实现对驾驶员信息的添加、修改及修改,能够实现对车辆缴费信息的录入、删除及修改,能够实现对车辆维修信息的录入、删除及修改,能够实现对车辆违章记录的录入、删除及修改,能够实现对管理员安全的维护,可为当前用户提供系统帮助提示。1.2系统开发方法本系统主要利用JBuilder2005工具,采用JAVA语言和SQLServer2000数据库开发实现。现今社会Java语言已经十分炽热,Java强大的功能和灵活的方法已经被越来越多的编码者所认可。它支持多种软硬件平台,是一个跨平台的图形开发环境,不仅可以跨平台共享程序中的各种对象,还支持应用程序的跨平台开发和分布,极大地减轻了程序员在不同平台上移植程序的工作量。Java可设计出目前流行的图形化的界面和可视化的编程方法,通过引入独具特色的数据窗口对象,使得开发人员轻松完成对数据库的操作。Java提供了对目前流行的几乎所有的大型数据库和桌面数据库的支持。同时它自身也附带了一个数据库管理系统AdaptiveServerAnywhere,几乎具备大型数据库的一切特征。而且应用程序的开发与具体的数据库无关,只要该数据库支持相应的标准如JDBC、ODBC即可,此举极大地方便了应用程序的开发和调试。Microsoft公司出口的SQLServer2000是SQLServer的最新版本。SQL49 沈阳航空工业学院毕业设计(论文)Server是使用客户机/服务器体系结构的关系型数据库管理系统(RDBMS)。它最初由Microsoft、Sybase等三家公司共同开发,并于1988推出第一个版本。1992年,SQLServer移植致电NT上后,Microsoft成了这个项目的主导者。1994年以后,Microsoft专注于开发、推广SQLServer的WindowsNT版本;Sybase则较专注于SQLServer在UNIX操作系统上的应用。SQLServer近年来不断更新版本,2000年推出了SQLServer2000。SQLServer2000常见的版本有:企业版(EnterpriseEdition)、标准版(StandardEdition)、个人版(PersonalEdition)和开发人员版(DeveloperEdition)。1.1项目背景该软件名称为沈阳志远出租车公司出租车信息管理系统。本项目的任务提出者是郑凤仁老师,项目负责人为李晓丽,系统分析员为李晓丽,系统设计员为李晓丽,程序设计员为李晓丽,编码人员为李晓丽,资料员为李晓丽。预期用户为沈阳志远出租车公司。1.2用户特征该软件的最终用户为沈阳志远出租车公司。管理人员应具备基本的计算机操作能力及数据库基本知识,在此基础上经过简单的培训,即可熟悉使用本系统。49 沈阳航空工业学院毕业设计(论文)1市场调研及可行性分析1.1需求分析随着我国经济的发展,出租车营运业一直很火热,可由于投资比较大,很多一部分人不想进行投资,而且大部分也不愿一直从事该行业。因种种原因人们想到了是否可以成立一个出租车公司,让人们可以以出租的方式租用车辆。但手工的管理实在是一个繁重的任务,不但工作量大,而且也容易出错。随着软件业的相应飞速发展,出租车管理信息系统也相应的越来越多,功能也越来越健全。随着出租车数量的增加,出租车公司也越来越多,但不是每个公司都有自己很完善的管理系统。所以出租车信息管理系统的市场很大,发展前景也很可观。1.2经济可行性分析该出租车信息管理系统的开发需要软件开发人员花费一定的时间精力,因此需要一定的运行资金。此项系统的耗费价值大约在百元左右。依据系统的性能而定。 但是它给企业带来的利润却是不能用价格估量的。本系统可以帮助公司使车辆信息的管理更加合理化、规范化。管理工作效率的提高,就意为着企业整体水平的提高,就会为企业带来丰富的利润,非常值得众多企业的投资。1.3技术可行性分析随着国内软件开发的日益发展壮大,各种中小企事业单位已具备独立开发各种类型的软件的能力,能够满足不同行业的特别的需求。而这个系统尽管其在组织关系上存在着很大的复杂性,繁琐性,但是就整个系统的技术构成上来看,它还是属于一个应用类的系统。其基本操作还是对存在数据库进行添加、删除、查找、编辑等。所以就单纯的数据库应用来看,暂不存在太大的技术问题。该系统利用Java技术来构建,Java具有语言相容性高、隐密安全性高、易于操控数据库、学习容易等特点,它具有强大的功能、友好的界面、开放的编程技术。数据库服务器选用SQL数据库,它能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。它的灵活性、安全性和易用性为数据库编程提供了良好的条件。综合软、硬件的分析本系统在技术上是可行的。49 沈阳航空工业学院毕业设计(论文)1系统分析1.1系统的需求分析硬件环境:处理器:InterPentiun166Mx以上内存:128MB以上硬盘空间:8.4GB以上光驱:CD-ROM48X显卡:SVAG显卡适配器操作系统:Windows2000/Me/2005/XP1.2数据流图与数据字典1.2.1数据流图本系统的数据流图如图4.1所示:图1.1系统数据流图49 沈阳航空工业学院毕业设计(论文)1.1.1数据字典1.外部实体表1.1驾驶员实体外部实体名称:驾驶员编号:T1有关的数据流:查询车辆信息、缴费信息、维修信息及违章信息,查询驾驶员信息表1.2管理员实体外部实体名称:管理员编号:T2有关的数据流:更新车辆信息、缴费信息、维修信息及违章信息,更新驾驶员信息,安全维护,系统帮助信息2.数据存储表1.3车辆数据存储数据存储名称:车辆信息表编号:F1组成:车牌号,制造商,发动机号,底盘编号,燃油类型,营运证号,计价器号,顶灯号,驾驶员姓名,驾驶证号,营审日期,次营审日期,年审日期,下次年审,投保日期,投保时长,车辆状态,违章次数表1.4驾驶员数据存储数据存储名称:驾驶员信息表编号:F2组成:驾驶证号,驾驶员姓名,性别,民族,文化程度,驾证初领日,身份证号,住址,联系电话,准驾类型49 沈阳航空工业学院毕业设计(论文)表1.1车辆缴费数据存储数据存储名称:车辆缴费信息表编号:F3组成:车牌号,费用种类,起始日期,截止日期,交费日期,收款人,收款单位,费用金额,备注表1.2车辆维修数据存储数据存储名称:车辆维修信息表编号:F4组成:维修车号,维修日期,维修时间,修理厂,维修时公里数,维修金额,负责人,维修原因,所更换零配件表1.3车辆违章数据存储数据存储名称:车辆维修信息表编号:F5组成:违章车号,驾驶员,违章日期,违章地点,罚款金额,处理单位,违章原因2.处理逻辑表1.4查询处理处理逻辑名称:查询编号:P1功能:完成信息的查询处理过程输入和输出输入流:查询条件输出流:符合条件的信息记录表1.5更新处理处理逻辑名称:更新49 沈阳航空工业学院毕业设计(论文)编号:P2功能:完成信息的更新输入和输出输入流:更新后的信息数据输出流:确认信息表1.1添加处理处理逻辑名称:添加编号:P3功能:完成信息的添加输入和输出输入流:新信息数据输出流:确认信息49 沈阳航空工业学院毕业设计(论文)1系统总体设计1.1软件平台的确定根据系统运行的需求,本系统的软件平台确定如下:开发工具:JBuilder2005/2006操作系统:Windows2000/XP数据库:SQLServer2000开发语言:JAVA1.2系统的层次及功能1.2.1设计思想通过需求分析阶段对出租车信息管理系统的整个应用情况作了全面的、详细的调查,确定系统的目标,收集支持系统总的设计目标的基础数据和对这些数据的要求,确定了用户的需求后,即可开始程序的设计了。出租车信息管理系统是一个非常常见且应用也较广泛的系统,就题目来说本系统应该完成基本功能为车辆基本信息的管理,其中要包括添加车辆信息、更新车辆信息及车辆信息的查询。每个车辆必然有一个驾驶员,所以还要有对驾驶员的管理功能。再有每个车辆都需要经常维修与缴费,所以要有对各个车辆进行维修与缴费记录的管理,相应的也要有增、删除、改功能。还有不能排除驾驶员在驾驶车辆时会出现违章,所以要有车辆违章记录的管理功能,可以针对某个驾驶员驾驶哪个车辆时违章。再有每个驾驶员可能一段时间后不会工作在本公司,所以该驾驶员就不应该有权使用本系统,而且长时间的人员流动会给系统造成负荷,所以为了使本软件具有一定的灵活性、使数据不出现冗余,应该有对用户进行增、删、改的功能。这样,到此为止本系统的主要功能的思路就确定了。再就是对于系统的安全维护、帮助及退出。系统的安全维护是针对管理员的密码进行更新,但此功能只对是管理员才有权限进行操作,系统帮助是对本系统的版权及操作做了一下简单的说明,若用户阅读后无法解决问题,则可根据系统提供的管理员信息进行联系。对于系统的退出,是为了交互友好而设,用户可重新登陆或退出49 沈阳航空工业学院毕业设计(论文)。到此本系统全部功能页面大概模型已构思完毕。另外要采取一定的措施保证系统的安全,为了防止恶意破坏,只有管理员可进行任何操作,驾驶员只能查询用户信息及车辆信息的查询。因此当用户要登录系统时要输入用户号及密码才能够进行相应操作。1.1.1系统H图本系统根据实际情况,按功能将系统划分成了九个大模块。分别是:用户登录模块、车辆管理模块、驾驶员管理模块、车辆维修管理模块、车辆违章管理模块、车辆缴费管理模块、系统维护、帮助模块和退出系统。具体系统的功能如图5.1所示。图1.1系统模块图49 沈阳航空工业学院毕业设计(论文)1.1.1系统E-R图本系统主要有三个实体:车辆、驾驶员和管理员,车辆与驾驶员是一对一的关系,驾驶员与管理员是多对多的关系,车辆与管理员也是多对多的关系。详细系统的E-R图如图5.2所示:图1.1系统E-R图1.1.2系统流程图图1.2系统流程图49 沈阳航空工业学院毕业设计(论文)1详细设计1.1数据库设计数据库在一个信息系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整性和一致性。同时,合理的数据结构也将有利于程序的实现。设计数据库系统时应该首先充分了解用户个方面的需求,包括现有的以及将来可能增加的需求。本节中将详细介绍数据库的设计过程。1.1.1数据需求分析用户的需求具体体现在对于车辆信息的管理及驾驶员信息的管理,这就要求数据库结构能充分满足车辆信息及驾驶员信息的各种操作。收集基本数据和数据结构,为后面的设计打下基础。根据系统模块图,可以确定在本系统中需要的数据项和数据结构如下:车辆:车牌号,制造商,发动机号,底盘编号,燃油类型,营运证号,计价器号,顶灯号,驾驶员姓名,驾驶证号,营审日期,次营审日期,年审日期,下次年审,投保日期,投保时长,车辆状态,违章次数驾驶员:驾驶证号,驾驶员姓名,性别,民族,文化程度,驾证初领日,身份证号,住址,联系电话,准驾类型管理员:ID,姓名,性别,密码,职位,联系方式车辆违章:违章车号,驾驶员,违章日期,违章地点,罚款金额,处理单位,违章原因车辆维修:维修车号,维修日期,维修时间,修理厂,维修时公里数,维修金额,负责人,维修原因,所更换零配件车辆缴费:车牌号,费用种类,起始日期,截止日期,交费日期,收款人,收款单位,费用金额,备注49 沈阳航空工业学院毕业设计(论文)在确定的所需数据之后,应首先确定表格中各字段的数据类型,对数据之间的关系进行分析,以方便后面完成数据库的具体实现。1.1.1数据库的实现根据上面的数据需求分析,可得出如下二维表格。在SQLServer2000中新建一个数据库,将其命名为CarMessage.MDF,将新建的数据库放置在应用程序的目录中,以便调用。值的注意的是,虽然在SQLServer2000中建立的数据表中,其字段的名称虽然可以为中文,但是从以往经验来看,字段名最好不要为中文,这是因为:其一,在某些不支持中文的系统中,字段名称含有中文的数据库,将不能够被识别。这样,该数据库就不能够使用,从而使数据库的可移植性下降。其二,即使是在支持中文的Windows操作系统中,在某些情况下,中文字段有可能会不能识别,或者不能很好的识别。因此,在这次数据库设计中,将所有的字段都用对应于该字段中文意义的英文来表示,这样既解决了中文字段的弊病,也提高了数据库的可读性。(1)车辆信息表(Car)的设计该表用来保存车辆的详细信息。在程序运行之前,该表中已有若干条记录。当然,在程序运行中,管理员也可自行添加修改该记录。表1.1车辆信息表(Car)字段名类型是否可为空长度字段说明Car_idVarCharN50车牌号(主键)FactoryVarCharN20制造商Action_idVarCharN15发动机号Under_idVarCharN15底盘编号Fuel_typeVarCharN10燃油类型Business_idVarCharN30营运证号Countmoney_idVarCharN20计价器号49 沈阳航空工业学院毕业设计(论文)Light_idVarCharN20顶灯号DrivernameVarCharN10驾驶员姓名Drive_idVarCharN20驾驶证号YingdateVarCharN20营审日期NextyingdateVarCharN20次营审日期YeardateVarCharN20年审日期NextyeardateVarCharN20下次年审ToudateVarCharN20投保日期ProtecthourVarCharN20投保时长StateVarCharN20车辆状态BreaklowcountIntN8违章次数表1.1驾驶员信息表(Driver)字段名类型是否可为空长度字段说明Drive_idVarCharN20驾驶证号(主键)DrivernameVarCharN10驾驶员姓名SexVarCharN8性别NationVarCharY20民族RecordVarCharY15文化程度FirsttakedateVarCharN20驾证初领日Position_idVarCharN20身份证号AddressVarCharN50住址TelVarCharN20联系电话TypeVarCharN20准驾类型49 沈阳航空工业学院毕业设计(论文)表1.1管理员信息表(Admin)字段名类型是否可为空长度字段说明IdVarCharN20管理员号(主键)AdminnameVarCharN10姓名SexVarCharN10性别PasswordVarCharN20密码PositionVarCharN20职位TelVarCharN50联系方式表1.2车辆维修信息表(Update)字段名类型是否可为空长度字段说明Update_idVarCharN20维修车号(主键)UpdatedateVarCharN20维修日期UpdatetimeVarCharN20维修时间FactioryVarCharN20修理厂KilometreVarCharN10维修时公里数MoneyVarCharN10维修金额PeopleVarCharN20负责人ReasonVarCharN50维修原因ChangeVarCharN50所更换零配件表1.3车辆违章信息表(WeiZhang)字段名类型是否可为空长度字段说明Breakcar_idVarCharN20违章车号(主键)DriverVarCharN10驾驶员DateVarCharN20违章日期AddressVarCharN50违章地点49 沈阳航空工业学院毕业设计(论文)MoneyVarCharN20罚款金额UnitVarCharN50处理单位ReasonVarCharN50违章原因表1.1车辆缴费信息表(JiaoFei)字段名类型是否可为空长度字段说明car_idVarCharN20车牌号(主键)TypeVarCharN15费用种类Begin_dateVarCharN20起始日期End_dateVarCharN20截止日期givedateVarCharN20交费日期peopleVarCharN10收款人unitVarCharN20收款单位moneyVarCharN20费用金额demoVarCharY50备注1.2系统的主要界面及代码本程序一共分为五个模块,分别是:用户登录模块、车辆管理模块、驾驶员管理模块、车辆维修管理模块、车辆违章管理模块、车辆缴费管理模块、系统维护、帮助模块和退出系统。下面将分别详细介绍各个模块的设计,由于篇幅有限,本节只给出车辆管理模块、违章车辆管理及系统维护模块的窗体及核心代码,其它代码详见附件中的源程序。1.2.1登录模块启动系统时,首先运行的是登陆界面,目的是对用户进行身份验证及合法性的检查。只有当用户名和密码相符时用户才能进入系统,且不同的用户的权限不同。这样做也是为了更好的保护系统的安全性、完整性;为了防止非法人员的进入、对系统所管理的信息进行非法的察看、修改和删除,造成信息的丢失、系统的瘫痪!49 沈阳航空工业学院毕业设计(论文)用户选择用户类别后输入用户名和密码,单击“确定”按钮。若用户名密码正确,则可成功进入主界面,否则提示“用户名或密码不正确”。进入主界面后会根据用户类型设置用户所能进行的操作,即在主界面中的窗体及控件加载完毕后,用setEnabled()方法设置不可操作的菜单项不可用。1.1.1车辆管理模块本模块分为三个窗体,主要实现对车辆信息的添加、查找、更改与删除。其各窗体的主要实现如下。1.新增车辆窗体本窗体主要实现添加新车辆的信息,此功能只能由管理员有权进行操作。在输入车辆信息时,系统要求该新车辆的每个信息都不能为空值。在输入日期时,系统要求日期一定是数字字符,且中间要用“.”做间隔,否则将会提示错误,要求用户重新输入。用户在输入过程中可单击“清空”按钮将现输入的所有信息文本框全部清空,也可单击“返回”按钮放弃本次操作,返回到系统主界面。用户在输入完所有信息后单击“添加”按钮,系统会将当前用户输入的新车辆信息添加到车辆信息库car中,若成功添加,系统会提示“添加车辆成功”,否则会提示“添加车辆失败”。本窗体如图6.3所示:图1.1新增车辆窗体49 沈阳航空工业学院毕业设计(论文)本窗体主要核心代码如下:db=newDataBaseManager();Stringstr="select*fromcarwhere车牌号='"+carid_t.getText().trim()+"'";try{if(db.getResult(str).first()){JOptionPane.showMessageDialog(null,"该车辆已存在!");//将各个文本框清空,代码略}else{str="insertintocar(车牌号,制造商,发动机号,底盘编号,燃油类型,营运证号,计价器号,顶灯号,驾驶员姓名,驾驶证号,营审日期,次营审日期,年审日期,下次年审,投保日期,投保时长,车辆状态,违章次数)values('"+carid_t.getText().trim()+"','"+factory_t.getText().trim()+"','"+actionid_t.getText().trim()+"','"+under_t.getText().trim()+"','"+jComboBox1.getSelectedItem()+"','"+businessid_t.getText().trim()+"','"+countmoney_t.getText().trim()+"','"+lightid_t.getText().trim()+"','"+drivername_t.getText().trim()+"','"+driveid_t.getText().trim()+"','"+yingdate.getText().trim()+"','"+nextyingdate.getText().trim()+"','"+yeardate.getText().trim()+"','"+nextyeardate.getText().trim()+"','"+toudate.getText().trim()+"','"+protecthour_t.getText().trim()+"','"+jComboBox2.getSelectedItem()+"',"+breaklowcount_t.getText().trim()+""+")";if(db.updateSql(str)){JOptionPane.showMessageDialog(null,"添加车辆成功!");//将各个文本框清空,代码略}elseJOptionPane.showMessageDialog(null,"添加车辆失败!");}49 沈阳航空工业学院毕业设计(论文)}catch(HeadlessExceptionex){}catch(SQLExceptionex){}1.车辆信息查询窗体本窗体主要实现指定车辆的信息查询,此功能管理员和普通用户均可进行操作。本窗体在查询车辆信息时提供两种查找方式:快速查询和精确查询,查找时两种方式只能选择一种。在选择快速查询时只需输入车牌号即可;在选择精确查询时则需输入“车牌号”、“制造商”、“车辆状态”及“违章次数”,同样的,在输入查找的关键字时系统要求关键字不能为空,在输入过程中可单击“返回”按钮放弃本次操作,返回到系统主界面。用户在输入完查找关键字后单击“查询”按钮,系统会根据当前用户输入的关键字到数据库中进行查找,并将满足条件的记录以表格方式显示出来,若无记录则表格显示为空。本窗体如图6.4所示:图1.1车辆信息查询窗体本窗体主要核心代码如下:Stringsql="select*fromcarwhere";49 沈阳航空工业学院毕业设计(论文)Stringstr1="";Stringstr2="";db=newDataBaseManager();try{if(jRadioButton1.isSelected()){str1="车牌号='"+jTextField1.getText().trim()+"'";}elseif(jRadioButton2.isSelected()){str2="车牌号='"+jTextField2.getText().trim()+"'and车辆状态='"+jTextField3.getText().trim()+"'and制造商='"+jTextField4.getText().trim()+"'and违章次数='"+jTextField5.getText().trim()+"'";}if(!str1.equals("")){if(!db.getResult(sql+str1).first()){Strings="没有编号为"+jTextField1.getText().trim()+"的车辆,请重新输入车牌号。";JOptionPane.showMessageDialog(null,s);jTextField1.setText("");}elsete.fetch(sql+str1);}else{if(!db.getResult(sql+str2).first()){Strings="该记录不存在,请仔细查对您输入的关键字。";JOptionPane.showMessageDialog(null,s);//将各个文本框清空,代码略}else49 沈阳航空工业学院毕业设计(论文)te.fetch(sql+str2);}}catch(HeadlessExceptionex){}catch(SQLExceptionex){}1.车辆更新管理窗体本窗体主要实现对指定车辆的信息更新及删除,此功能只能由管理员进行操作。在对某车辆进行信息更新前,要输入查找关键字进行指定车辆的查找,系统要求关键字不能为空,单击“查询”按钮系统会将指定车辆的所有信息显示出来,在查找车辆信息时若用户输入的关键字不存在则系统会给出相应的提示信息。用户在修改好车辆信息后,单击“保存修改”按钮,系统将会把当前车辆的修改后信息数据保存到数据库中,若单击“删除该记录”按钮,系统将会删除当前数据库中该车辆的信息。用户在操作过程中若单击“返回”按钮,则放弃本次操作,返回到系统主界面。本窗体如图6.5所示:图1.1车辆更新管理窗体49 沈阳航空工业学院毕业设计(论文)本窗体主要核心代码如下:“查询”按钮db=newDataBaseManager();try{Stringstr1="select*fromcarwhere车牌号='"+findcarid_t.getText().trim()+"'";if(findcarid_t.getText().trim().equals(""))JOptionPane.showMessageDialog(null,"请输入车牌号!");elseif(!db.getResult(str1).first()){Strings="没有编号为"+findcarid_t.getText().trim()+"的车辆,请重新输入车牌号。";JOptionPane.showMessageDialog(null,s);findcarid_t.setText("");}else{Stringstr="select*fromcarwhere车牌号='"+findcarid_t.getText().trim()+"'";r=db.getResult(str);r.first();carid_t.setText(findcarid_t.getText());factory_t.setText(r.getString("制造商"));startid_t.setText(r.getString("发动机号"));underid_t.setText(r.getString("底盘编号"));jComboBox1.setSelectedItem(r.getString("燃油类型"));businessid_t.setText(r.getString("营运证号"));countid_t.setText(r.getString("计价器号"));lightid_t.setText(r.getString("顶灯号"));drivername_t.setText(r.getString("驾驶员姓名"));driveid_t.setText(r.getString("驾驶证号"));49 沈阳航空工业学院毕业设计(论文)yingdate.setText(r.getString("营审日期"));nextyingdate.setText(r.getString("次营审日期"));yeardate.setText(r.getString("年审日期"));nextyeardate.setText(r.getString("下次年审"));nextyeardate.setText(r.getString("投保日期"));protecthour_t.setText(r.getString("投保时长"));jComboBox2.setSelectedItem(r.getString("车辆状态"));breaklowcount_t.setText(r.getString("违章次数"));}}catch(Exceptionex){System.out.println(ex.toString());}“保存修改”按钮try{StringstrSQL="updatecarset车牌号='"+carid_t.getText().trim()+"',制造商='"+factory_t.getText().trim()+"',发动机号='"+startid_t.getText().trim()+"',底盘编号='"+underid_t.getText().trim()+"',燃油类型='"+jComboBox1.getSelectedItem()+"',营运证号='"+businessid_t.getText().trim()+"',计价器号='"+countid_t.getText().trim()+"',顶灯号='"+lightid_t.getText().trim()+"',驾驶员姓名='"+drivername_t.getText().trim()+"',驾驶证号='"+driveid_t.getText().trim()+"',营审日期='"+yingdate.getText().trim()+"',次营审日期='"+nextyingdate.getText().trim()+"',年审日期='"+yeardate.getText().trim()+"',下次年审='"+nextyeardate.getText().trim()+"',投保日期='"+toudate.getText().trim()+"',投保时长='"+protecthour_t.getText().trim()+"',车辆状态='"+jComboBox2.getSelectedItem()+"',违章次数='"+breaklowcount_t.getText().trim()+"'where车牌号='"+findcarid_t.getText().tri49 沈阳航空工业学院毕业设计(论文)m()+"'";if(db.updateSql(strSQL)){JOptionPane.showMessageDialog(null,"信息修改成功!");}elseJOptionPane.showMessageDialog(null,"信息修改失败!");}catch(Exceptionex){System.out.println(ex.toString());}“删除当前记录”按钮try{Stringstr2="deletefromcarwhere车牌号='"+findcarid_t.getText().trim()+"'";Stringq="确定要删除吗?";intok=JOptionPane.showConfirmDialog(null,q,"确认",JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE);if(ok==JOptionPane.YES_OPTION)if(db.updateSql(str2))JOptionPane.showMessageDialog(null,"删除成功!");elseJOptionPane.showMessageDialog(null,"删除失败!");}catch(Exceptionex){System.out.println(ex.toString());}1.1.1驾驶员管理模块本模块分为三个窗体,主要实现对驾驶员信息的添加、查找、更改与删除。其各窗体的主要实现如下。1.添加驾驶员窗体本窗体主要实现49 沈阳航空工业学院毕业设计(论文)添加新驾驶员的信息,此功能只能由管理员有权进行操作。在输入驾驶员信息时,系统要求该新驾驶员的每个信息都不能为空值。在输入日期时,系统要求日期一定是数字字符,且中间要用“.”做间隔,否则将会提示错误,要求用户重新输入。用户在输入过程中可单击“清空”按钮将现输入的所有信息文本框全部清空,也可单击“返回”按钮放弃本次操作,返回到系统主界面。用户在输入完所有信息后单击“添加”按钮,系统会将当前用户输入的新驾驶员信息添加到驾驶员信息库driver中,若成功添加,系统会提示“添加驾驶员成功”,否则会提示“添加驾驶员失败”。1.驾驶员信息查询窗体本窗体主要实现指定驾驶员的信息查询,此功能管理员和普通用户均可进行操作。本窗体在查询驾驶员信息时提供两种查找条件:驾驶证号和准驾类型,查找时两种条件可都选择。在输入查找的关键字时系统要求关键字不能为空,在输入过程中可单击“返回”按钮放弃本次操作,返回到系统主界面。用户在输入完查找关键字后单击“查询”按钮,系统会根据当前用户输入的关键字到数据库中进行查找,并将满足条件的记录以表格方式显示出来,若无记录则表格显示为空。2.驾驶员更新管理窗体本窗体主要实现对指定驾驶员的信息更新及删除,此功能只能由管理员进行操作。在对某驾驶员进行信息更新前,要输入查找关键字进行指定驾驶员的查找,系统要求关键字不能为空,单击“查询”按钮系统会将指定驾驶员的所有信息显示出来,在查找驾驶员信息时若用户输入的关键字不存在则系统会给出相应的提示信息。用户在修改好驾驶员信息后,单击“保存修改”按钮,系统将会把当前驾驶员的修改后信息数据保存到数据库中,若单击“删除该记录”按钮,系统将会删除当前数据库中该驾驶员的信息。用户在操作过程中若单击“返回”按钮,则放弃本次操作,返回到系统主界面。1.1.2车辆维修管理模块本模块分为三个窗体,主要实现对车辆维修记录信息的添加、查找、更改与删除。其各窗体的主要实现如下。1.车辆维修记录窗体本窗体主要实现添加新的车辆维修的信息,此功能只能由管理员有权进行操作。在输入车辆维修信息时,系统要求该新车辆维修的每个信息都不能为空值。在输入日期时,系统要求日期一定是数字字符,且中间要用“.”49 沈阳航空工业学院毕业设计(论文)做间隔,否则将会提示错误,要求用户重新输入。用户在输入过程中可单击“清空”按钮将现输入的所有信息文本框全部清空,也可单击“返回”按钮放弃本次操作,返回到系统主界面。用户在输入完所有信息后单击“添加”按钮,系统会将当前用户输入的新车辆维修信息添加到车辆维修信息库broke中,若成功添加,系统会提示“添加信息成功”,否则会提示“添加信息失败”。1.维修信息查询窗体本窗体主要实现指定车辆维修信息的查询,此功能管理员和普通用户均可进行操作。本窗体在查询车辆维修信息时提供两种查找条件:车牌号和维修日期,查找时两种条件可都选择。在输入查找的关键字时系统要求关键字不能为空,维修日期必须为数字字符,日期中间用“.”做间隔,在输入过程中可单击“返回”按钮放弃本次操作,返回到系统主界面。用户在输入完查找关键字后单击“查询”按钮,系统会根据当前用户输入的关键字到数据库中进行查找,并将满足条件的记录以表格方式显示出来,若无记录则表格显示为空。2.维修记录更新管理窗体本窗体主要实现对指定车辆维修信息的更新及删除,此功能只能由管理员进行操作。在对某车辆维修信息进行更新前,要输入查找关键字进行指定车辆维修信息的查找,系统要求关键字不能为空,单击“查询”按钮系统会将指定车辆的维修信息显示出来,在查找车辆维修信息时若用户输入的关键字不存在则系统会给出相应的提示信息。用户在修改好车辆维修信息后,单击“保存修改”按钮,系统将会把当前车辆维修信息的修改后信息数据保存到数据库中,若单击“删除该记录”按钮,系统将会删除当前数据库中该车辆维修信息的信息。用户在操作过程中若单击“返回”按钮,则放弃本次操作,返回到系统主界面。1.1.2车辆违章管理模块本模块分为三个窗体,主要实现对车辆违章记录信息的添加、查找、更改与删除。其各窗体的主要实现如下。1.违章登记窗体本窗体主要实现添加新的车辆违章的信息,此功能只能由管理员有权进行操作。在输入车辆违章信息时,系统要求该新车辆违章的每个信息都不能为空值。在输入日期时,系统要求日期一定是数字字符,且中间要用“.”49 沈阳航空工业学院毕业设计(论文)做间隔,否则将会提示错误,要求用户重新输入。用户在输入过程中可单击“清空”按钮将现输入的所有信息文本框全部清空,也可单击“返回”按钮放弃本次操作,返回到系统主界面。用户在输入完所有信息后单击“添加”按钮,系统会将当前用户输入的新车辆违章信息添加到车辆违章信息库weizhang中,若成功添加,系统会提示“添加信息成功”,否则会提示“添加信息失败”。当记录添加成功时,在车辆表中的违章次数要加1。本窗体如图6.12所示:图1.1违章登记窗体本窗体主要核心代码如下:db=newDataBaseManager();Stringstr="select*fromcarwhere车牌号='"+breakcarid_t.getText().trim()+"'";try{if(!db.getResult(str).first()){49 沈阳航空工业学院毕业设计(论文)JOptionPane.showMessageDialog(null,"该车辆不存在!");//将各个文本框清空,代码略}else{str="insertintoweizhang(违章车号,驾驶员,违章日期,违章地点,罚款金额,处理单位,违章原因)values('"+breakcarid_t.getText().trim()+"','"+drivername_t.getText().trim()+"','"+breakdate_t.getText().trim()+"','"+breaklowaddress_t.getText().trim()+"','"+penaltymoney_t.getText().trim()+"','"+unit_t.getText().trim()+"','"+breaklowreason_a.getText().trim()+"'"+")";if(db.updateSql(str)){JOptionPane.showMessageDialog(null,"添加信息成功!");StringstrSQL="updatecarset违章次数=违章次数+1"+"where车牌号='"+breakcarid_t.getText().trim()+"'";if(db.updateSql(strSQL));//将各个文本框清空,代码略}elseJOptionPane.showMessageDialog(null,"添加信息失败!");}}catch(HeadlessExceptionex){}catch(SQLExceptionex){}1.违章车辆查询本窗体主要实现指定车辆的违章信息查询,此功能管理员和普通用户均可进行操作。本窗体在查询车辆信息时提供两种查找方式:按车号查找和按违章日期查找,查找时两种方式只能选择一种。在选择按车号查找时只需输入车牌号即可;在选择按违章日期查找时则需输入“违章日期”,同样的,在输入查找的关键字时系统要求关键字不能为空,且系统要求违章日期必须为数字字符,日期之间要用“.”做间隔,在输入过程中可单击“返回”49 沈阳航空工业学院毕业设计(论文)按钮放弃本次操作,返回到系统主界面。用户在输入完查找关键字后单击“查询”按钮,系统会根据当前用户输入的关键字到数据库中进行查找,并将满足条件的记录以表格方式显示出来,若无记录则表格显示为空。本窗体如图6.13所示:图1.1违章车辆查询窗体本窗体主要核心代码如下:Stringsql="select*fromweizhangwhere";Stringstr1="";Stringstr2="";db=newDataBaseManager();try{if(jRadioButton1.isSelected()){49 沈阳航空工业学院毕业设计(论文)str1="违章车号='"+findcarid_t.getText().trim()+"'";}elseif(jRadioButton2.isSelected())str2="违章日期='"+date_t.getText().trim()+"'";if(!str1.equals("")){if(!db.getResult(sql+str1).first()){Strings="没有编号为"+findcarid_t.getText().trim()+"车辆的违章记录!";JOptionPane.showMessageDialog(null,s);}elsete.fetch(sql+str1);}else{if(!db.getResult(sql+str2).first()){Strings="没有您要查找的记录!";JOptionPane.showMessageDialog(null,s);date_t.setText("");}elsete.fetch(sql+str2);}}catch(HeadlessExceptionex){}catch(SQLExceptionex){}1.违章记录更新管理窗体本窗体主要实现对指定车辆违章信息的更新及删除,此功能只能由管理员进行操作。在对某车辆违章信息进行更新前,要输入查找关键字进行指定车辆违章信息的查找,系统要求关键字不能为空,单击“查询”按钮系统会将指定车辆的违章信息显示出来,在查找车辆违章信息时若用户输入的关键字不存在则系统会给出相应的提示信息。用户在修改好车辆违章信息后,单击“保存修改”按钮,系统将会把当前车辆违章49 沈阳航空工业学院毕业设计(论文)信息的修改后信息数据保存到数据库中,若单击“删除该记录”按钮,系统将会删除当前数据库中该车辆违章信息的信息。用户在操作过程中若单击“返回”按钮,则放弃本次操作,返回到系统主界面。本窗体如图6.14所示:图1.1违章记录更新管理窗体本窗体主要核心代码如下:“查询”按钮db=newDataBaseManager();try{Stringstr1="select*fromcarwhere车牌号='"+findcarid_t.getText().trim()+"'";Stringstr2="select*fromweizhangwhere违章车号='"+findcarid_t.get49 沈阳航空工业学院毕业设计(论文)Text().trim()+"'";if(findcarid_t.getText().trim().equals(""))JOptionPane.showMessageDialog(null,"请输入车牌号!");elseif(!db.getResult(str1).first()){Strings="没有编号为"+findcarid_t.getText().trim()+"的车辆,请重新输入车牌号。";JOptionPane.showMessageDialog(null,s);}elseif(!db.getResult(str2).first()){Strings=findcarid_t.getText().trim()+"车辆的违章记录不存在!";JOptionPane.showMessageDialog(null,s);}else{Stringstr="select*fromweizhangwhere违章车号='"+findcarid_t.getText().trim()+"'";r=db.getResult(str);r.first();carid_t.setText(findcarid_t.getText().trim());drivername_t.setText(r.getString("驾驶员"));date_t.setText(r.getString("违章日期"));address_t.setText(r.getString("违章地点"));penaltymoney_t.setText(r.getString("罚款金额"));unit_t.setText(r.getString("处理单位"));breaklowreason_a.setText(r.getString("违章原因"));if(r.isFirst()){jButton2.setEnabled(false);jButton1.setEnabled(true);}elseif(r.isLast()){49 沈阳航空工业学院毕业设计(论文)jButton1.setEnabled(false);jButton2.setEnabled(true);}else{jButton1.setEnabled(true);jButton2.setEnabled(true);}}}catch(Exceptionex){System.out.println(ex.toString());}“保存修改”按钮try{StringstrSQL="updateweizhangset违章车号='"+carid_t.getText().trim()+"',驾驶员='"+drivername_t.getText().trim()+"',违章日期='"+date_t.getText().trim()+"',违章地点='"+address_t.getText().trim()+"',罚款金额='"+penaltymoney_t.getText().trim()+"',处理单位='"+unit_t.getText().trim()+"',违章原因='"+breaklowreason_a.getText().trim()+"'where违章车号='"+carid_t.getText().trim()+"'";if(db.updateSql(strSQL)){JOptionPane.showMessageDialog(null,"信息修改成功!");}elseJOptionPane.showMessageDialog(null,"信息修改失败!");}catch(Exceptionex){System.out.println(ex.toString());}“删除记录”按钮try{49 沈阳航空工业学院毕业设计(论文)Stringstr2="deletefromweizhangwhere违章车号='"+carid_t.getText().trim()+"'and驾驶员='"+drivername_t.getText().trim()+"'and违章日期='"+date_t.getText().trim()+"'and违章地点='"+address_t.getText().trim()+"'and罚款金额='"+penaltymoney_t.getText().trim()+"'and处理单位='"+unit_t.getText().trim()+"'and违章原因='"+breaklowreason_a.getText().trim()+"'";Stringq="确定要删除吗?";intok=JOptionPane.showConfirmDialog(null,q,"确认",JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE);if(ok==JOptionPane.YES_OPTION){if(db.updateSql(str2)){JOptionPane.showMessageDialog(null,"删除成功!");r.updateRow();}elseJOptionPane.showMessageDialog(null,"删除失败!");}}catch(Exceptionex){System.out.println(ex.toString());}1.1.1车辆缴费管理模块本模块分为三个窗体,主要实现对车辆缴费记录信息的添加、查找、更改与删除。其各窗体的主要实现如下。1.缴费信息录入窗体本窗体主要实现添加新的缴费违章的信息,此功能只能由管理员有权进行操作。在输入车辆缴费信息时,系统要求该新车辆缴费的每个信息都不能为空值。在输入日期时,系统要求日期一定是数字字符,且中间要用“.”做间隔,否则将会提示错误,要求用户重新输入。用户在输入过程中可单击“清空”49 沈阳航空工业学院毕业设计(论文)按钮将现输入的所有信息文本框全部清空,也可单击“返回”按钮放弃本次操作,返回到系统主界面。用户在输入完所有信息后单击“添加”按钮,系统会将当前用户输入的新车辆缴费信息添加到车辆缴费信息库jiaofei中,若成功添加,系统会提示“添加信息成功”,否则会提示“添加信息失败”。1.缴费信息查询窗体本窗体主要实现指定车辆缴费信息的查询,此功能管理员和普通用户均可进行操作。本窗体在查询车辆缴费信息时提供两种查找条件:车牌号和费用种类,查找时两种条件可都选择。在输入查找的关键字时系统要求关键字不能为空,在输入过程中可单击“返回”按钮放弃本次操作,返回到系统主界面。用户在输入完查找关键字后单击“查询”按钮,系统会根据当前用户输入的关键字到数据库中进行查找,并将满足条件的记录以表格方式显示出来,若无记录则表格显示为空。2.缴费信息更新管理窗体本窗体主要实现对指定车辆缴费信息的更新及删除,此功能只能由管理员进行操作。在对某车辆缴费信息进行更新前,要输入查找关键字进行指定车辆缴费信息的查找,系统要求关键字不能为空,单击“查询”按钮系统会将指定车辆的缴费信息显示出来,在查找车辆缴费信息时若用户输入的关键字不存在则系统会给出相应的提示信息。用户在修改好车辆缴费信息后,单击“保存修改”按钮,系统将会把当前车辆缴费信息的修改后信息数据保存到数据库中,若单击“删除该记录”按钮,系统将会删除当前数据库中该车辆缴费信息的信息。用户在操作过程中若单击“返回”按钮,则放弃本次操作,返回到系统主界面。1.1.2系统维护模块本模块主要实现用户的密码修改,用户选择用户类型后输入用户名,原始密码,再输入两次新密码,且系统要求以上信息不能为空值,输入后单击“确定”按钮,系统判断该用户是否存在,原始密码是否正确,两次新密码是否一致,若以上判断都通过则系统修改该用户的密码,若修改成功,系统给出提示信息,否则系统给出相应的提示信息。本窗体如图所示:49 沈阳航空工业学院毕业设计(论文)图1.1系统维护窗体本窗体主要核心代码如下:db=newDataBaseManager();try{Stringstr="select*fromadmin";Stringstr2="select*fromdriver";Stringgetstring="";Stringpassword="";Stringtable="";if(jComboBox1.getSelectedItem().equals("管理员")){r=db.getResult(str);getstring="ID";password="密码";table="admin";}else{r=db.getResult(str2);49 沈阳航空工业学院毕业设计(论文)getstring="驾驶证号";password="身份证号";table="driver";}r.first();if(userid_t.getText().trim().equals(r.getString(getstring))){if(String.valueOf(password_pt.getPassword()).equals(r.getString(password)))if(String.valueOf(newpassword_pt.getPassword()).equals(String.valueOf(secondnewpassword_pt.getPassword())))if(db.updateSql("update"+table+"set密码='"+String.valueOf(newpassword_pt.getPassword())+"'"))JOptionPane.showMessageDialog(null,"密码修改成功!");elseJOptionPane.showMessageDialog(null,"密码修改失败!");elseJOptionPane.showMessageDialog(null,"您两次输入的新密码不一致!");elseJOptionPane.showMessageDialog(null,"您输入的密码错误!");}elseJOptionPane.showMessageDialog(null,"该用户不存在!");}catch(SQLExceptionex){}1.1.1帮助模块49 沈阳航空工业学院毕业设计(论文)该模块主要给用户提供帮助信息,该帮助信息分为两个:系统帮助与管理员帮助。当驾驶员可以进行本系统时说明该用户有使用本系统的权限,当驾驶员寻求帮助时,有可能是想进行某些操作但却无法使用,这时系统帮助会提示他驾驶员和管理员的使用权限。如果当用户想修改个人信息但却无法修改时,管理员帮助会为用户提示当前管理员的联系方式,以便及时与管理员联系,更正驾驶员的个人信息。1.1.1退出模块本模块主要有两部分:重新启动与退出系统。当用户选择了重新启动时,系统会释放当前窗体与主窗体,重新回到登录界面,用户可重新登录。当用户选择了退出系统时,系统询问用户是否真的要退出系统,用户单击“确定”后即可退出系统,否则放弃退出,继续显示系统主界面。49 沈阳航空工业学院毕业设计(论文)1系统的测试及运行1.1测试计划1.1.1测试方案测试方法使用黑盒测试和白盒测试相结合的方法,目的在于二者结合能够更好的发现软件内部潜在的错误与露洞。测试用例要求包含尽可能多的可行性用例(即设想到最常到用的数据及不常用到的临界点数据)1.1.2测试项目与进度表1.1测试项目进度例表测试内容名称目的进度用户登陆模块测试1功能是否完善系统完成后一天内车辆管理模块测试2功能是否完善系统完成后两天内驾驶员管理模块测试3功能是否完善系统完成后两天内车辆缴费管理模块测试4功能是否完善系统完成后三天内车辆维修管理模块测试5功能是否完善系统完成后三天内车辆违章管理模块测试6功能是否完善系统完成后四天内系统维护、帮助、退出模块测试7功能是否完善系统完成后四天内1.2测试项目说明1.2.1测试用例设计表1.2用户登录模块测试用例序号测试用例期望结果实际结果1不输入密码系统提示密码不能为空系统提示密码不能为空49 沈阳航空工业学院毕业设计(论文)2不输入用户名系统提示用户名不能为空系统提示用户名不能为空3错误的密码系统提示密码错误系统提示密码错误,将密码输入框清空且获得焦点4错误的用户名系统提示用户名错误系统提示用户名错误,将用户名输入框清空且获得焦点5不填写用户名与密码系统提示用户名和密码不能为空系统提示用户名和密码不能为空6填写正常用户名与密码成功进入系统主界面成功进入系统主界面表1.1车辆管理模块测试用例序号测试用例期望结果实际结果1输入的信息中有空值该文本框丢失焦点时系统提示该字段不能为空当文本框丢失焦点时系统提示该字段不能为空2单击清空按钮可成功将所有文本框清空可成功将所有文本框清空3单击返回按钮可成功释放当前窗体并返回主界面可成功释放当前窗体并返回主界面4输入有效的车辆信息可成功添加信息并提示信息添加成功可成功添加信息并提示信息添加成功5输入无效日期信息系统提示日期只能是数字系统提示日期只能是数字字符6在输入日期时不以.间隔系统提示日期间要以.间隔系统提示输入日期时要以.间隔7输入重复的车牌号系统提示该车辆已存在系统提示该车牌号已存在8输入无效车牌号系统提示该车辆不存在系统提示该车辆不存在9输入有效车牌号系统成功显示该车辆信息系统成功显示该车辆信息于表格内10输入有效车辆号系统成功显示该车辆信息系统成功将该车辆信息对应显示于各个文本框内49 沈阳航空工业学院毕业设计(论文)11修改车辆信息系统成功接收并修改库系统成功接收修改信息并提示信息修改成功12查找某车辆并删除系统成功删除该信息系统成功删除该信息并提示信息删除成功表1.1驾驶员管理模块测试用例序号测试用例期望结果实际结果1输入的信息中有空值该文本框丢失焦点时系统提示该字段不能为空当文本框丢失焦点时系统提示该字段不能为空2单击清空按钮可成功将所有文本框清空可成功将所有文本框清空3单击返回按钮可成功释放当前窗体并返回主界面可成功释放当前窗体并返回主界面4输入有效的驾驶员信息可成功添加信息并提示信息添加成功可成功添加信息并提示信息添加成功5在日期一项中输入非数字字符系统提示日期只能是数字字符系统提示日期只能是数字字符6在输入日期时不以.间隔系统提示日期间要以.间隔系统提示输入日期时要以.间隔7输入重复的驾驶员号系统提示该驾驶员已存在系统提示该驾驶员号已存在8输入无效驾驶员号系统提示该驾驶员不存在系统提示该驾驶员不存在9输入有效驾驶员号系统成功显示该驾驶员信息系统成功显示该驾驶员信息于表格内10输入有效驾驶员号系统成功显示该驾驶员信息系统成功将该驾驶员信息对应显示于各个文本框内11修改驾驶员信息系统成功接收并修改库系统成功接收修改信息并提示信息修改成功12查找某驾驶员并删除系统成功删除该信息系统成功删除该信息并提示信息删除成功49 沈阳航空工业学院毕业设计(论文)表1.1车辆违章管理模块测试用例序号测试用例期望结果实际结果1输入的违章信息中有空值该文本框丢失焦点时系统提示该字段不能为空当文本框丢失焦点时系统提示该字段不能为空2单击清空按钮可成功将所有文本框清空可成功将所有文本框清空3单击返回按钮可成功释放当前窗体并返回主界面可成功释放当前窗体并返回主界面4输入有效的违章信息可成功添加信息并提示信息添加成功可成功添加信息并提示信息添加成功5输入无效日期信息系统提示日期只能是数字系统提示日期只能是数字字符6在输入日期时不以.间隔系统提示日期间要以.间隔系统提示输入日期时要以.间隔7输入重复的违章车号系统可成功接收信息并将车辆信息表中的违章次数加1系统成功接收违章信息并将车辆信息表中的违章次数加18输入无效违章车号系统提示该车号不存在系统提示该车号不存在9输入有效违章车号系统成功显示该违章车号信息系统成功显示该违章车号信息于表格内10输入有效违章车号系统成功显示该违章车辆的信息系统成功将该违章车号信息对应显示于各个文本框内11修改违章车辆的信息系统成功接收并修改库系统成功接收修改信息并提示信息修改成功12查找某车辆违章信息并删除系统成功删除该信息系统成功删除该信息并提示信息删除成功表1.2车辆缴费管理模块测试用例序号测试用例期望结果实际结果1输入的缴费信息中有空值该文本框丢失焦点时系统提示该字段不能为空当文本框丢失焦点时系统提示该字段不能为空49 沈阳航空工业学院毕业设计(论文)2单击清空按钮可成功将所有文本框清空可成功将所有文本框清空3单击返回按钮可成功释放当前窗体并返回主界面可成功释放当前窗体并返回主界面4输入有效的缴费信息可成功添加信息并提示信息添加成功可成功添加信息并提示信息添加成功5在日期一项中输入非数字字符系统提示日期只能是数字字符系统提示日期只能是数字字符6在输入日期时不以.间隔系统提示日期间要以.间隔系统提示输入日期时要以.间隔7输入重复的缴费车号系统可成功接收信息并将信息添加到库中系统可成功接收信息并将信息添加到库中8输入无效缴费车号系统提示该车号不存在系统提示该车号不存在9输入有效缴费车号系统成功显示该缴费车号信息系统成功显示该缴费车号信息于表格内10输入有效缴费车号系统成功显示该缴费车辆的信息系统成功将该缴费车号信息对应显示于各个文本框内11修改缴费车辆的信息系统成功接收并修改库系统成功接收修改信息并提示信息修改成功12查找某车辆缴费信息并删除系统成功删除该信息系统成功删除该信息并提示信息删除成功表1.1车辆维修管理模块测试用例序号测试用例期望结果实际结果1输入的维修信息中有空值该文本框丢失焦点时系统提示该字段不能为空当文本框丢失焦点时系统提示该字段不能为空2单击清空按钮可成功将所有文本框清空可成功将所有文本框清空3单击返回按钮可成功释放当前窗体并返回主界面可成功释放当前窗体并返回主界面49 沈阳航空工业学院毕业设计(论文)4输入有效的维修信息可成功添加信息并提示信息添加成功可成功添加信息并提示信息添加成功5在日期一项中输入非数字字符系统提示日期只能是数字字符系统提示日期只能是数字字符6在输入日期时不以.间隔系统提示日期间要以.间隔系统提示输入日期时要以.间隔7输入重复的维修车号系统可成功接收信息并将信息添加到库中系统可成功接收信息并将信息添加到库中8输入无效维修车号系统提示该车号不存在系统提示该车号不存在9输入有效维修车号系统成功显示该维修车号信息系统成功显示该维修车号信息于表格内10输入有效维修车号系统成功显示该维修车辆的信息系统成功将该维修车号信息对应显示于各个文本框内11修改维修车辆的信息系统成功接收并修改库系统成功接收修改信息并提示信息修改成功12查找某车辆维修信息并删除系统成功删除该信息系统成功删除该信息并提示信息删除成功表1.1系统维护、帮助、退出模块测试用例序号测试用例期望结果实际结果1输入无效用户名系统提示用户名错误,或不存在系统提示用户名不存在2输入无效原始密码系统提示密码错误系统提示密码错误3两次新密码不一致系统提示两次输入的密码不一致系统提示两次输入的密码不一致,要求重新输入4输入有效的用户名,密码及新密码可成功修改系统将该用户密码于库中成功修改,并提示修改密码成功5选择系统帮助功能系统调用帮助功能界面系统成功显示系统帮助界面49 沈阳航空工业学院毕业设计(论文)6选择管理员帮助功能系统调用管理员帮助界面系统成功显示管理员帮助界面7选择重新启动系统功能系统显示登录界面系统将当前系统关闭并显示登录界面8选择退出系统功能系统可成功退出系统询问是否退出,选择是后系统成功退出,选择否系统正常运行1.1.1测试结果评价表1.1测试结果评价表测试项目实测数据与结果的偏差发现的问题结果分类用户登陆模块无无通过车辆管理模块无无通过驾驶员管理模块无无通过车辆缴费管理模块无无通过车辆维修管理模块无无通过车辆违章管理模块无无通过系统维护、帮助、退出模块无无通过用户登陆模块无无通过1.1.2测试分析结论经过测试,各个功能模块表现出来的性能。与开发者实际想得到的基本一致。但在一致中仍然存在一定的不足。不足表现在程序的功能还有不完善的地方,即对各种异常事件的处理还不够全面。基于时间等各方面原因,系统的开发工作有待于更近一步的完善。49 沈阳航空工业学院毕业设计(论文)参考文献[1]郎波.Java语言程序设计.北京:清华大学出版社,2005.5[2]邵光亚,邵丽萍.Java语言程序设计.北京:清华大学出版社,2003.6[3]李晓黎.Java程序设计教程.北京:清华大学出版社,2004.6[4]刘甲曜,严贵兰.CoreJava高级应用程序开发.东南大学出版社,1999.1[5]藏杨,秦冬,李育龙.JAVA软件工程案例精解.电子工业出版社.2004.9[6]尚俊杰,秦卫中.网络程序设计JAVA案例教程.北京:清华大学出版社,北京交通大学出版社.2005.149 沈阳航空工业学院毕业设计(论文)小结通过这次毕业设计,使我将有关Java及数据库操作的知识,全部结合起来用在了这个系统上。让我对软件的开发有了更深层的了解。对开发一款软件的周期以及什么是软件的人性化有了一个概念。更能意识到一款软件从可行性研究、策划、界面设计、功能、系统需求、到软件的代码编写、系统的测试的全部开发过程,也更了解一款软件的可行性研究的重要性。让我对几年来的学习有了一次可以融会贯通的机会。使我对我所学的专业有了新的认识。由于本身能力的局限性,所以编写出来的代码即使经过反复检查也难免出错,所以在设计阶段力求使用有限的时间找出尽可能多的错误,力求系统功能完善。在本系统的测试中使用了黑盒法,请一位不熟悉本系统的同学来进行随意性的操作,打破习惯的操作顺序,从中发现错误,在设计阶段系统的大量错误得到了改正。经过一个月的设计和开发,沈阳志远出租车公司出租车信息管理系统基本开发完毕。其功能基本符合用户需求。但是由于时间较短,该系统还有许多不尽人意的地方,有待进一步的加强与完善。49 沈阳航空工业学院毕业设计(论文)致谢在这次毕业设计中,感谢郑凤仁老师在百忙之中,经常给予我热情的帮助与指导,并提出一些建议和意见,使得系统能及时开发完成。我从指导教师郑凤仁老师的身上学到了很多东西,认真负责的工作态度、严谨的治学精神和深厚的理论水平都使我收益匪浅。他无论在理论上还是在实践中,都给与我很大的帮助,使我得到不少的提高,这对于我以后的工作和学习都是一种帮助。在此非常感谢他的耐心辅导。49