1、毕业设计(论文)题 目:基于web的车辆租赁管理系统设计有实现学 生:指导老师:院 系:专 业:班 级:学 号:2014年6月福建工程学院本科毕业设计(论文)作者承诺保证书本人郑重承诺: 本篇毕业设计(论文)的内容真实、可靠。如果存在弄虚作假、抄袭的情况,本人愿承担全部责任。学生签名:年 月日福建工程学院本科毕业设计(论文)指导教师承诺保证书本人郑重承诺:我已按有关规定对本篇毕业设计(论文)的选题与内容进行了指导和审核,该同学的毕业设计(论文)中未发现弄虚作假、抄袭的现象,本人愿承担指导教师的相关责任.指导教师签名:年 月 日目 录1 项目来源11.1项目背景及目的11。2汽车租赁管理系统的现
2、状11.3项目研究的目的和方法21.3。1 项目的研究目的21.3。2开发方法及步骤22开发平台介绍22。1系统平台环境22。1.1硬件平台22。1。2软件平台32。2相关技术介绍32。2。1B/S模式32。2。2JQuery和Easyui42。2。3Struts2+hibernate+Spring42。2。4maven43可行性研究43。1现行组织目标43。2业务概况43。3存在的问题43.4可行性分析43。4.1经济可行性分析43.4。2技术可行性分析53。4。3社会因素可行性53。4.4结论54系统功能需求54.1需求分析54。1.1概述54.1。2总目标54。2系统功能64。3 系统功
3、能分析64。3。1 概要64。3.2 创建系统用例模型74。3。3 创建系统静态模型104.3。4. 创建系统顺序图模型135系统概要设计195。1概述195。2系统E-R图195。3数据库设计215。3。1 概述215。3。2 数据库表设计216系统详细设计与实现246。1程序设计与说明246。1.1用户锁定窗口模块。246。1。2增加车辆模块246。1。3预约管理模块之增加256。1。4计算费用266。1.5报表模块266.1.6车辆展示模块277总结28致谢语29参考文献30I基于web的车辆租赁管理系统设计与实现摘要:现如今,大多数的中小汽车租赁公司还在采用手工作业,手工管理的方式来管
4、理租赁活动,这不仅仅让工作效率变得低下,还利于错误的滋生,而且不利于车辆等信息的发布。本系统主要实现租赁公司对车辆信息的发布,管理、统计租与还的业务,能够有效的提高管理效率,降低管理费用的支出.系统应用了B/S架构,将系统的主要部分集中到网络服务器上,简化了系统的开发,使用,以及更新。系统使用了sturts2+hibernate4.0+Spring+easyui等主流的框架,这些框架技术成熟,推广面高,不仅高效稳定,而且利于后期的开发与扩展。系统较好的满足了租赁公司的需求,在提高信息发布效率,管理租赁效率上,取得了一定的效果关键字:汽车租赁管理;JSP;SQL Server 2005;sshe
5、;myeclipseCar rental management system based on web design and implementationAbstract:Nowadays, most of the small and medium car rental companies are still using manual labor, manual management methods to manage the leasing activities, this is not only leads to inefficient work, but also prone to a
6、variety of errors, and is not conducive for the information release. this system is mainly to achieve the vehicle leasing company to publish information, management and statistical rent business, it can effectively improve the efficiency of management and reduce the management cost of spending. Syst
7、em adopts B/S architecture, the core of the system on the server, simplifies development, maintenance, updating and using。 System USES the sturts2 + hibernate4.0 + Spring + easyui mainstream framework, such as the framework of mature technology, promoting high surface, not only efficient, stable and
8、 conducive to the development and extension of late. this system is better meet the needs of the leasing company,it achieved a certain results in improving the efficiency of information and the management efficiency of lease.Key words: Car rental management; The JSP。 SQL server 2005。 sshe;myeclipse1
9、81 项目来源1.1 项目背景及目的伴随着时代的变化,人们对汽车租赁行业产生了更加浓厚的兴趣,更加愿意参与到汽车租赁的活动中来,因而使汽车租赁行业高速的发展。汽车租赁是指将汽车的资产所有权与使用权分开来,出租人具有资产的所有权,而租赁人和出租人以签订合同的方式,使之拥有资产的使用权。随着电子信息化的发展,信息系统已经渗透到了各行各业当中,并且成为了节约成本,提高效益的最有效的途径之一。在这种大趋势的推动之下,汽车租赁行业采用信息系统来管理,也成为了必然的结果。其目的是以先进的计算机技术与通信技术,将汽车租赁带入到信息化管理的行列。以往的手工作业的方式,已经无法满足租赁公司与租赁者的要求,以手工
10、作业的方式,管理车辆的租赁,不仅仅使得业务进行的缓慢,加重工作人员的工作量,使业务更加的繁重,还容易由于各种疏忽,而诱发公司利益上的损失。而对于租赁者来说,选车的不方便,得到的信息不够全,就是所面临的一个大问题。所以就该开发一个租赁系统,将出租,归还与预约进行信息化的管理,以满足租赁者与汽车租赁公司的需求。1.2 汽车租赁管理系统的现状汽车租赁系统在我国的很多地方与地区得到了应用,其中系统最主要的功能就是方便用户,提高效益,降低成本,减少错误。还有就是能够改善公司的管理,提升客户的体验,提高管理人员的素质,让其做的每一步,都符合公司的规定,无形之中,也提高了公司的效益,促成了现代化的管理。而上
11、述这些效果,基本条件便是,有一个好的信息系统,且将这个系统很好的应用在公司的业务上.在汽车租赁系统中,主要的设计理念便是为了更好的服务租赁者,方便其快速的找到自己需要的车,选车自己所需要的车进行预约。而对租赁公司方面来说,系统能够提供管理客户的信息,车辆的信息,以及租赁管理等.现如今租赁行业面临的最大问题是,如何让客户选到自己心仪的车,如何让客户更好的预约,如何让客户更快更及时的取到车辆,如何让公司更好的管理各种数据,就是该租赁管理系统所要解决的最重要的难题。为了能够减少工作人员的工作量,减少手工作业的时间,提升效率,让工作流程透明化,合理化.上述这些问题的解决,都必须依赖于租赁管理系统。1.
12、3 项目研究的目的和方法1。3.1 项目的研究目的该汽车租赁系统的开发,首先通过对汽车租赁流程的分析,业务功能的分析,以及业务数据的分析,列出系统必须要实现的功能。其次,系统采用B/S设计,方便使用者随时随地的使用系统,降低系统的使用成本;通过使用SQL2005数据库,更加迅速方便的管理客户的数据。基于web的车辆租赁管理系统主要功能包括查询车辆,预约车辆,查询租赁的各种信息,发布车辆,管理租赁的各种信息等。系统的使用方法与方式符合用户群的习惯,具有简单易用,方便快捷等优点。1.3.2 开发方法及步骤1 可行性分析首先列出多种方案,然后对他们进行比较,找出可行性最高的一种,提出可性研究的报告。
13、2 需求分析通过租赁公司,租赁者的需求描述,以及自己租车的需求体验,不同途径收集到的各种资料,对租赁流程进行一个完整的了解,更加需求,确定出系统所必须要有的功能,性能等。3 数据库的设计更加系统的各方面的需求,例如,业务的需求,信息的需求等,设计出符合系统要求的数据库,建立ER图,完善数据库的设计,建立功能符合需求的数据库。4 系统实现采用struts2+hibernate+spring+easyui框架,实现该系统。5 测试与分析进行各个模块的测试,找个系统的bug,分析系统的不足之处.2 开发平台介绍2.1 系统平台环境2.1.1 硬件平台硬件平台是根据系统的设计需求,确定系统运行的物理环
14、境,所提供的物理平台在充分满足系统的要求之下,还要有可靠性,安全性,以及高性价比等要求,以提高系统的体验。根据上文的描述,提出了需要以下的硬件要求。客户端: 处理器 Inter(R) Core(TM) i32330M CPU 2。20GHz内存:2.0GB 以上服务器端:处理器 Inter(R) Core(TM) i32330M CPU 2.20GHz内存:2.0GB 以上2.1.2 软件平台软件平台是系统所需要的软件集成的环境,选择实用的软件环境对系统来说是至关重要的。选择时,还必须考虑该软件平台的易使用性,使用的广泛性以及软件平台的性能与价钱等。本系统所采用的软件平台如下:1 操作系统操作
15、系统作为PC机最重要的软件平台,目前使用的主要有,Linux和window这两种,本系统使用的是window 7 进行开发的,对于上述的系统,建议使用window7以上的。2支撑软件支撑软件是帮助开发人员更高效的开发信息系统的软件,包括编程软件,数据库和一些集成的插件等等.(1) Myeclipse 作为企业级工作平台,利用Myeclipse我们可以在数据库与java开发,发布时提供极大的便利.而且其集成了许多的插件,方便我们编程时的使用,提供效率。(2)SQL2005 数据库作为管理数据的必备工具,极大程度上方便了开发人员存储数据,查询数据,更改数据,删除数据等.SQL2005数据库作为微软
16、开发的数据库,性能相当的高效,非常方面开发人员的使用。2.2 相关技术介绍2.2.1 B/S模式就是浏览器/服务器模式,该模式的优点是,在TCP/IP协议等相关通信技术的支持下,能够使得客户通过浏览器来访问服务器,做到客户端与服务端的交互.相对于C/S架构的升级困难,开发费用高等缺点,B/S架构的最大优点就是运行和维护的成本很低,能够实现不同的人,从不同的地方,登录系统,进行自己所需要的服务。另外,B/S模式更能够面向广大的用户,只要你要电脑,电脑能够连的上网络,那么,你就能使用基于B/S架构的系统。2.2.2 JQuery和EasyuiJQuery是一个优秀的JavaScript框架,你是一
17、个轻量级的js库,使用它,能够方便快捷的与后台实习Ajax交互,而且它的API非常的完全,能够让开发人员很快的上手,使之提高工作效率.Easyui是一组基于JQuer的ui插件的集合,它能够让开发人员很方便的书写后台,打造出既美观又使用的ui界面。2.2.3 Struts2+hibernate+SpringSsh(Struts2+hibernate+Spring)中,其中,Struts2对模型层,控制层与视图层都提供了相应的组件.Spring是为了解决开发的复杂性,使用基本的JavaBean代替EJB,能够使你的代码更加清晰与明了。Hibernate主要是用来进行对象关系映射的,它对java与
18、数据库之间的连接进行了非常好的封装,使开发的人员能够更好的应用面向对象的思维方式来编写代码,最大的优点是能够使系统跨数据库平台。2.2.4 mavenmaven可以利用很少的代码来描述项目的文件的构建。我就利用了maven提供的关于jar包的管理.3 可行性研究3.1 现行组织目标汽车租赁管理信息系统管理的主要目标有:一、方便增加车辆 。二、方便管理用户。三、方便管理租与还.四、统计租与还量大的地区。3.2 业务概况汽车租赁管理系统是面向租赁公司与租赁者,对他们的各项事宜进行管理,其中包括车辆的增加,人员的管理,租与还的管理等.3.3 存在的问题租赁制度的管理不够完善,收费不够合理,存在乱收费
19、的现象。选取车辆的不方便无法统计热门的借车与还车点等.3.4 可行性分析3.4.1 经济可行性分析与C/S架构方式的系统来对比,采用B/S的系统有着无与伦比的优势,那就是升级与维护的费用小。并且能够让人们快速方便的使用系统,提高了系统具有的性价比。因此该系统不存在经济上的问题,相反,能够提高员工的工作效率,降低了人力的成本.3.4.2 技术可行性分析该系统主要采用的技术是学校中基本有接触到的技术,而且在网上的相关资料也非常的多,这些技术都是非常成熟的技术,所以不会存在技术上的问题.综上所述,技术上是完全可行的.3.4.3 社会因素可行性目前已经有很多基于B/S的汽车租赁系统了,租赁公司需要让管
20、理更加信息化,智能化,快捷化,方便化,所以对该系统是有需求的。而且系统便于维护与更新,因此具有社会因素可行性。3.4.4 结论通过对以上三个方面的分析,我认为该系统完全具备开发的可行性.而且是有必要的,方便于公司与用户的,所以可以进行该系统的开发.4 系统功能需求4.1 需求分析4.1.1 概述基于web的汽车租赁管理系统主要是面向个租赁公司已以及租赁者的,系统主要具有的功能是用户信息管理,车辆信息管理,预约管理,出租管理,归还管理,费用计算等。系统力求于满足实际的需求,与实际相结合,提高租赁公司的工作效率,提升客户的体验。4.1.2 总目标目前许多中小的车辆租赁公司还在采用手工的方式来管理用
21、户的信息,车辆信息,以及租赁的记录,这样极其不利于公司的推广,不利于让用户发现新车,也会导致不利于公司业务的展开。这个系统能够帮汽车租赁公司完成下面的功能:1 车辆的发布,更新,删除等2 客户信息的管理等3 预约信息的管理等4 租赁信息的管理等5 统计热门车型,热门租车地方等6 计算费用该系统能够帮助租赁者完成以下功能:1 查询车辆2 进行预约,修改预约等3 进行租赁查询4 查询费用等本系统作为一个汽车租赁的管理系统,是租赁公司最重要的组成成分之一。4.2 系统功能基于目前市场实际情况,为了使汽车租赁公司更好的管车辆源信息,客户信息,租金费用等问题,同时为了让求租者能够更方便快捷的查看车辆信息
22、。该车辆租赁系统应拥有下面的功能。管理端:1 系统管理:主要对系统的用户信息的维护和管理,具体包括:添加管理员,删除管理员 ,登录后密码修改,设置权限等。它是出于系统的安全考虑和用户所具有软件操作权限的控制。2 客户管理:主要对客户信息的维护和管理,具体包括 :增、删。改、查客户信息。客户包括:租赁人,会员。3 车辆管理:主要对车辆的信息进行管理,具体包括增、删、改、差车辆的信息,以及对车辆出租和归还时车辆状态的更新。 4 费用管理:根据租赁者租赁的车辆以及预计使用的时间,进行预计费用的计算,根据租赁者实际使用的时间,进行实际费用的计算,以及对租赁者资金冻结的管理。5 租赁管理:主要是针对租赁
23、者的车辆预约的管理,包括在预约时间之前,预约的车辆必须处于待租的状态。用户端:1 个人信息管理:主要是对用户个人信息的修改,其中包括对身份证,姓名以及密码等等。2 租赁查询:包括查询租赁车辆的时间,所需要缴纳的各种费用等。3 车辆查询:包括对车辆的信息进行查询,例如单天的费用,可以租的时间等。4.3 系统功能分析4。3。1 概要这个部分主要是对系统需要实现的功能进行分析,用以明确系统主要是在做什么,需要实现哪些功能,这些功能的顺序是怎么样的.4。3.2 创建系统用例模型用例模型作为系统分析的第一个步骤。作为描述系统参与者所期望拥有的功能,它在需求分析阶段有着相当大的作用.系统有以下的参与者:1
24、租赁者(Lease):车辆租赁者能够通过该系统进行租赁车辆,查询车辆信息,预定车辆,查询个人租赁信息等操作。2车辆管理员(manager):对于系统来说,租赁者租赁车辆和归还车辆都需要车辆管理员进行处理。3系统管理员(Administrator):系统管理员负责车辆。租赁者等信息的维护。如图41租赁者用例图所表示,系统能够提供给租赁者如下的功能:l 查找车辆:租赁者能够通过车辆的品牌或者型号或类别等查找车辆的详细信息.l 登录系统:租赁者能够根据自己的用户名和相关密码登录系统,查询个人信息,查询车辆信息,进行车辆预定,查询租赁信息(包括各项费用)。l 注册:租赁者可以注册一个账号,以获取登录系
25、统的功能。l 预定车辆:在登入系统后,租赁者可以预定选中的车辆。l 租赁车辆:租赁者可以向车辆管理员进行车辆的租借.l 归还车辆:租赁者通过车辆管理员归还租赁的车辆,并交纳相应的费用。图41 租赁者用例图如图4-2 车辆管理员用例图所示,系统支持车辆管理员有着以下的活动.l 处理租赁:租赁者可以通过车辆管理员租赁车辆。当车辆管理员处理租赁时,需要检查用户的合法性,如果不合法,不允许租赁车辆。如果在这之前,车辆已经被用户预订,那么需要删除这条预订。(判断方法:是否缴费等)已经将车辆交付给租赁者之前的对车辆检查,对车辆的信息进行更新。l 处理归还:租赁者可以通过车辆员归还车辆,并交纳相应的费用。车
26、辆管理员应当检查车辆的状态,判断租赁者除了租金以外,还需要交纳的费用.包括:油量的使用费用,车辆破损的费用费,应该缴纳的罚单费用。查询车辆信息:车辆管理员能够查询各种车辆信息。l 添加车辆信息:车辆管理员可以进行车辆的添加,添加时需要输入车辆的详细信息。l 删除车辆信息:车辆管理员可以进行车辆的删除,删除车辆时,车辆的所有信息都将被删除。l 修改车辆信息:车辆的基本信息可以被车辆管理员修改。l 查询租赁者信息:车辆管理员有权限查询租赁者的信息。l 添加租赁者:车辆管理员可以添加租赁者,添加时需要输入租赁者的详细信息l 删除车辆信息:车辆管理员可以进行租赁者的删除,删除租赁者时,租赁者的所有信息
27、都将被删除l 修改租赁者信息:租赁的信息可以被车辆管理员修改。图42 车辆管理员用例图如图4-3 系统管理员用例图所示,系统能够为系统管理员提供以下的活动支持。l 查询车辆信息:系统管理员能够查询各种车辆信息.l 添加车辆信息:系统管理员可以进行车辆的添加,添加时需要输入车辆的详细信息。l 删除车辆信息:系统管理员可以进行车辆的删除,删除车辆时,车辆的所有信息都将被删除。l 修改车辆信息:系统管理员可以更改汽车的信息。l 查询租赁者信息:系统管理员有权限查询租赁者的信息。l 添加租赁者:系统管理员可以添加租赁者,添加时需要输入租赁者的详细信息l 删除车辆信息:系统管理员可以进行租赁者的删除,删
28、除租赁者时,租赁者的所有信息都将被删除l 修改租赁者信息:租赁的信息可以被系统管理员修改。l 修改密码:系统管理员有权限修改其他用户的密码,可以有效防止租赁者或车辆管理员忘记账号密码.l 修改角色:系统管理员能够修改用户的角色(租赁者和车辆管理员),更改他们所拥有的系统功能图4-3 系统管理员用例图4。3。3 创建系统静态模型首先,确定参与者的属性,应当有以下几种:人员信息类,如图44所示。该类主要是用来描述人员的相关属性的。图44 人员信息类其次,对系统中的一些实体类进行辨别与确定,这些类正常情况下要进行保存.车辆信息类,如图4-5所示.该类主要是用来描述车辆相关属性的.图4-5 车辆信息类
29、如图46所示,为租车记录类.该类主要是用来描述图46 租车记录类还车记录类,如图4-7所示.该类主要用来描述还车记录所具有的属性。图4-7 还车记录类预约记录类,如图48所示。该类只要用来描述预约信息所具有的属性.图48 预约记录类根据不同的角色在系统中拥有不一样的权限,设计出角色所拥有的的菜单类。菜单类,如图49所示。图49菜单类图410为以上实体类之间的联系。图410 类图(实体类之间的相互联系)4。3.4。 创建系统顺序图模型为了能够清楚明白的看出系统对象之间的相互作用的行为,我们还应该创建系统的顺序图模型.一组对象之间在时间上的相互作用可以使用顺序图进行描述。对“租赁者预定车辆用例的描
30、述如下:表41,图411。表41 用例租赁者预定车辆描述名称租赁者预定车辆标示UC_002描述租赁者通过系统进行车辆的预定前提登录系统结果预定成功或者失败扩展N/A包含N/A继承自N/A图4-11 租赁者预定车辆顺序图对“租赁者查询车辆用例的描述如下:表4-2图412表42 租赁者查找车辆名称租赁者查找车辆标识UC001描述租赁者可以查询未出租的车辆,包括车辆的各种信息前提通过查询全部或者输入品牌型号等结果显示相关车辆的信息扩展N/A包含N/A继承自N/A图 4-12 租赁者查找车辆顺序图对“租赁者查询车辆”用例的描述如下:表43图413表43 租赁者查询个人信息名称租赁者查询个人信息标识UC
31、 003描述租赁者通过登录租赁系统来查询自己的信息前提登录系统结果显示出个人的信息扩展N/A包含登录系统用例继承自N/A图413租赁者查询个人信息对“车辆管理员处理租赁用例的描述如下:表44图4-14表44 车辆管理员处理租赁名称车辆管理员处理租赁标示UC_010描述车辆管理员对租赁者预租赁的车辆请求进行处理。前提租赁者向车辆管理员请求租赁车辆冰提交身份证或驾驶证与押金等。结果租赁成功或者失败扩展N/A包含N/A继承自N/A图414车辆管理员处理租赁对“车辆管理员处理还车”用例的描述如下:表4-5图4-15表45 车辆管理员处理还车名称标示UC_011描述车辆管理员对租赁者归还的车辆进行处理。
32、前提租赁出去的车辆被租赁者归还.结果添加归还记录。扩展N/A包含N/A继承自N/A图415 车辆管理员处理还车对“系统管理员增加车辆”用例的描述如下:表4-6图4-16。表46系统管理员增加车辆名称系统管理员车辆的添加标识UC 025描述系统管理员通过系统进行车辆的增加操作.前提系统管理员已登录结果新增车辆被添加扩展N/A包含N/A继承自N/A图4-16 系统管理员车辆的添加5 系统概要设计5.1 概述通过系统概要设计,为后期的系统创造一个模型,在软件系统中,完成系统的的数据设计和系统的构建。按照上面的需求分析,现在开始设计系统的概要设计。5.2 系统ER图图5-1为系统的ER图,现实世界可以
33、应用er图进行描述,该系统中各个实体之间的关系在下图中进行了描述.图51 E-R图实体的属性图为5-2.图52 实体属性图5.3 数据库设计5.3。1 概述数据库作为信息系统的核心,在信息系统中有着无与伦比的作用,系统做的好不好,很大程度上依赖于数据库的设计是否完善。好的数据库设计,能够让开发人员在设计系统的时候,达到效率的事半功倍,反之,若数据库设计的不合理,不仅会照成数据的冗余,也会导致开发系统时事倍功半.5.3。2。 数据库安全设计及描述对系统进行了角色的划分,能够很好的保证系统数据的安全,不同的角色应该有着不同的权限,系统将为其提供不同的服务。表5-1 为角色与权限的对应表。表5-1
34、角色权限对应表权限描述租赁者个人信息与车辆信息的查询,车辆的预定.车辆管理员对租赁者的预约,借车,还车等进行处理。系统管理员对系统的各个方面的信息进行操作.5。3.2 数据库表设计表5-2用来存放系统各个用户的基本信息-Tmanager字段名字段的类型是否空是否唯一是否主键所具有的含义Idvarchar(32)NYY主键createdatetimeDateNNN创建时间modifydatetimeDateNNN最后修改时间emailVarchar(30)NNN电子邮箱NameVarchar(10)NYN登录名PwdVarchar(32)NNN登录密码factualnameVarchar(20)
35、NNN真实姓名RoleVarchar(10)NNN角色CardVarchar(20)NNN身份证号表53用来存放车辆的基本信息Tcar字段名字段的类型是否空是否唯一是否主键所具有的含义Idvarchar(32)NYY主键BrandVarchar(30)NNN车辆品牌TypeVarchar(30)NNN车辆类型ModelVarchar(30)NNN型号StateVarchar(10)NNN车辆状态introductionTextNNN简介pictureVarchar(100)NNN图片depositIntegerNNN押金PriceIntegerNNN价钱AreaVarchar(20)NNN地区
36、表5-4用来存放预约记录Tappointment字段名字段的类型是否空是否唯一是否主键所具有的含义Idvarchar(32)NYY主键TcarVarchar(32)NNN车辆编号,外键TmanagerVarchar(32)NNN预约人编号,外键starttimeDateNNN开始时间estimatendtimeDateNNN预计结束时间estimateusedayIntegerNNN预计使用天数AreaVarchar(20)NNN地区appointmentstateVarchar(20)NNN预约状态表55用来存放租借记录Trentrecord字段名字段的类型是否空是否唯一是否主键所具有的含义
37、Idvarchar(32)NYY主键TcarVarchar(32)NNN车辆编号,外键TmanagerVarchar(32)NNN租借编号,外键OperatorVarchar(32)NNN操作员编号,外键starttimeDateNNN开始时间estimatendtimeDateNNN预计结束时间estimateusedayIntegerNNN预计使用天数AreaVarchar(20)NNN地区rentbeforestateVarchar(100)NNN交车前车辆状态GasolineIntegerNNN剩余油量rentstateVarchar(20)NNN出租情况表56用来存放归还记录-Trt
38、urnrecord字段名字段的类型是否空是否唯一是否主键所具有的含义Idvarchar(32)NYY主键trentrecordVarchar(32)NNN租借编号,外键OperatorVarchar(32)NNN操作员编号,外键endtimeDateNNN结束时间usedayIntegerNNN使用天数returncarareaVarchar(20)NNN归还地区rentafterstateVarchar(100)NNN还车时车辆状态GasolineIntegerNNN剩余油量ticketVarchar(100)NNN罚单信息pexpenseIntegerNNN破损费用yexpenseInte
39、gerNNN油费fexpenseIntegertNNN罚单费用sexpenseIntegerNNN使用费用表57用来存放系统菜单- Tmenu字段名字段的类型是否空是否唯一是否主键所具有的含义Idvarchar(32)NNY主键PidVarchar(32)NNN父节点,外键iconClsVarchar(30)NNN菜单图标textVarchar(30)NNN菜单名称urlVarchar(30)NNN链接6 系统详细设计与实现6.1 程序设计与说明本系统实现了用户基本信息管理,车辆基本信息管理,预约管理,出租管理,归还管理等系统模块,以下部分将对系统中的部分代码进行说明.6.1.1 用户锁定窗口
40、模块。1 描述:该模块能够让用户在暂时需要离开,又不想关闭窗口时起到很好的作用,它能锁定窗口。2 页面展示如图61:图6-1 用户锁定窗口界面3实现原理:当用户点击锁定按钮时,先根据jsp页面上保存的session中用户的登录名,在弹出的dialog中显示并设定dialog的属性modal为true.当用户输入密码,点击确定时,在后台获取用户输入的密码与本来就存在的用户名,与数据库中的数据进行匹配,进行判断是否解锁成功。6.1.2 增加车辆模块1描述:车辆的增加是系统管理员通过这个模块完成的。2页面展示6-2:图62 添加车辆界面3实现原理:根据车辆所需要的信息提供文本框进行数据的录入,在预览
41、图片的时候,使用了滤镜,当管理员点击了增加,图片就会被保存到指定的位置,而在数据库存储的将是该图片的url。后天收到这些数据后,对其进行处理转换后,转为实体类Tcar的属性,然后Dao层调用save()方法.6.1.3 预约管理模块之增加1 描述:该模块通过输入租赁者的身份证号或者是驾驶证,以及选择相关的车辆,进行预约的操作.2效果展示63:图6-3 预约管理模块界面3实现原理:通过使用combogrid,从Tmanager取到租赁者的信息,从Tcar中取到车辆的信息,然后输入相应的开始时间和预计结束时间,能够自动的计算出相应的天数。将这些数据传入后台,实例化出预约记录对象,然后对用其的sav
42、e()方法.6.1.4 计算费用1描述:该模块能够根据管理员输入的相应 汽油种类的单价,与损坏车辆的差价,罚单的费用进行自动的计算出租赁者应当缴纳的费用。其中包括车辆的使用费用。车辆的使用若超过当天的12点,则算一天。2效果展示图6-4:图6-4 计算费用界面3实现原理:首先,要进行时间的计算,我采用的方法是先将时间转换为毫秒数,然后将结束时间开始时间,得到的是两者相差的毫秒数,除以一天的毫秒数,就能获得使用的天数,其中需要注意的是,要判断还车时间是否超过了当天的12点,根据情况的不同,进行相应的时间相加减。其次,根据租车钱剩余的油量,与还车时剩余的油量,进行使用油量的计算.破损费用则是根据租
43、前和还时,车辆是否遭到的人员损坏进行判断应当补缴多少钱.罚单费用的信息则来自于交警大队,员工在处理还车时,应该进行罚单的咨询。违约费用则是租赁在在预计结束时间之后才进行还车,此时应该根据公司的规定,对租赁者进行一定违约费用的罚款.最后根据上面等到的各个金额,计算出最后应该缴纳的总费用。6.1.5 报表模块1描述:该模块主要是在统计不同地区的借车辆与还车辆,利用管理人员对某些借还量大的地区,集中更大的精力,展开更多的业务,用以获得更大的效益。2效果展示65:图65 报表展示页面3实现原理:本部分主要采用了highcharts插件来构建柱状图,数据于后台进行实时的加载,数据有出租记录表与归还记录表
44、分别取得,在同一个柱状图中进行展示。6.1.6 车辆展示模块1描述:该模块主要是为了向租赁者展示租赁公司所具有的的车辆,能够提供车辆的详细信息与价格等信息。2效果展示图66:图6-6 车辆展示模块3这个模块在jsp页面上使用了struts2提供的strutstags标签,以便更好的获取后台传回的list类型的数据。后台则根据用户在前台输入的搜索条件,从数据库中查找出相应的数据,实例化出相应的对象,返回到前台的显示页面上.7总结经过这学期的毕设,我对ssh的开发模式有了一定程度上的了解,也终于明白的什么样才能算是面向对象的思维。以前在专周做系统的时候,经常做的就是用数据库的思想去考虑类与类,对象与对象之间的关系,这是一件很错误的事情,而直到今天,我才发现了自己的错误。毕设也许是告一段落了,但是我的学习生涯却也许刚刚才开始,我要学习的东西真的还有很多.在开发的过程中,我深刻的明白了写好代码的格式是一件非常有必要