汽车租赁管理系统(论文范文 - JSP - JAVA - 毕业设计) - 图文

更新时间:2024-07-05 01:04:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

摘 要

汽车租赁是近年来一个新兴行业。为规范管理和经营行为,减少经营成本,提高工作效率。开发汽车租赁管理系统软件十分必要。

使用MySQL数据库和Java语言实现了一个基于JSP的汽车租赁管理系统。其开发主要包括前端应用程序的开发以及后台数据库的建立和维护两个方面。前台操作包括:浏览查询车辆信息,留言,对车辆进行投诉,查看投诉回复,进行汽车租赁、续租、还车和事故违章申请。后台回复会员的投诉,发布新车辆信息,管理车辆,审批租赁订单和事故违章申请,查询收入报表等。

该系统以网络为平台,界面简洁,操作简单,易于掌握,简化租赁活动记录手续,提高了租赁周转时间。

关键字:汽车租赁;订单;审批

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

The Design and Implementation of Renting Car Management System

Abstract

Renting Car is an emerging industry in recent years. In order to regulate the management and working actions, reduce operating costs and improve efficiency. It’s so necessary to develop of Renting Car Management system software.

With the use of MySQL database and Java language to achieve Renting Car Management System based on JSP. The development includes two aspects .One is the development of front-end application. The other is the foundation and maintenance of the database. Foreground operations includes browsing and Querying cars’ information, leaving messages, discussing, giving appraise to cars, renting , renewing, reletting, returning and applying for admission of accident and breaking rules. Background operations are giving responses to members’ complaint, redeploying new cars, managing cars, examinging and approving orders and applications of accident and breaking rules, browsing income forms.

The system uses the network as a platform. The interface is simple and easy to operate. Simplify to memorize records of rentals actions, improve the turnaround time for renting.

Key Words:Renting Cars ;Order Form ;Examine And Approve

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

目 录

摘 要 .......................................................................................................................................I Abstract ...................................................................................................................................... II 1 绪论 ...................................................................................................................................... 1

1.1系统背景 ............................................................................................................. 1 1.2系统目标 ............................................................................................................. 1 1.3系统开发环境技术介绍 ..................................................................................... 2

1.3.1技术介绍 ................................................................................................. 2 1.3.2系统开发环境 ......................................................................................... 4

2 系统分析 .............................................................................................................................. 5

2.1可行性分析 .......................................................................................................... 5

2.1.1技术可行性分析 ..................................................................................... 5 2.1.2操作可行性分析 ..................................................................................... 5 2.2需求分析 .............................................................................................................. 5

2.2.1模块功能需求 ......................................................................................... 5 2.2.2系统数据流图 ......................................................................................... 6 2.2.3数据字典 ............................................................................................... 10

3 系统设计 ............................................................................................................................ 14

3.1概要设计 ........................................................................................................... 14

3.1.1设计原则 ............................................................................................... 14 3.1.2系统三层模式 ....................................................................................... 14 3.1.3系统模块设计 ....................................................................................... 16 3.1.4数据库概要设计 ................................................................................... 16 3.2详细设计 ............................................................................................................ 17

3.2.1模块详细设计 ....................................................................................... 17 3.2.2系统流程图 ........................................................................................... 21 3.2.3数据库详细设计 ................................................................................... 21

4 系统实现和问题解决 ........................................................................................................ 25

4.1游客功能实现 ................................................................................................... 25 4.2会员功能模块实现 ........................................................................................... 25

4.2.1会员登录 ............................................................................................... 25 4.2.2租赁模块实现 ....................................................................................... 26 4.2.3事故反馈处理模块 ................................................................................. 28 4.3管理员管理模块实现 ....................................................................................... 29

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

4.3.1发布新车辆实现 ................................................................................... 29 4.3.2车辆管理实现 ....................................................................................... 30 4.3.3订单管理实现 ....................................................................................... 31 4.3.4事故管理 ............................................................................................... 31 4.3.5统计管理 ............................................................................................... 32 4.4第三方审批实现 ............................................................................................... 32 4.5问题解决 ........................................................................................................... 33

4.5.1技术问题 ............................................................................................... 33 4.5.2逻辑处理 ............................................................................................... 34

5 系统测试 ............................................................................................................................ 35 6 结束语 ................................................................................................................................ 37

6.1 系统总结 .......................................................................................................... 37 6.2 系统不足 .......................................................................................................... 37

6.2.1租赁身份验证 ....................................................................................... 37 6.2.2时间限制问题 ....................................................................................... 37 6.3 系统改进思想 ................................................................................................... 37

6.3.1时间限制 ............................................................................................... 37 6.3.2人性化细节功能 ................................................................................... 37

7 致谢 ................................................................................................................................... 39 8 参考文献 ........................................................................................................................... 40

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

1 绪论

1.1系统背景

经济的发展,生活水平的提高,使人们对汽车的需求越来越大。随着生活逐渐富裕,人们已经有能力租车消费,但中国现有汽车保有量难以充分满足需求。其次,购买私车还不能普及,从个人来说,租车是最好的,买车一次性投入大,购车的手续多,养车费用高,而私车的利用率一般不高,闲置时间较长;出现交通事故后,处理手续太烦琐。而租车则有很大的灵活性,既不会占用大量资金,也不会出现闲置,车况有保证,出差到外地也可以驾驶车辆。而且租赁车车型可选择,客户既能承受,又能满足多样化的需求。而且,从社会角度看,租赁车辆属于公共用车的范畴,它既缓解了现阶段财政控购与企业单位用车之间的矛盾,提高了资金利用率,同时也符合社会车辆总量控制原 则,可在一定程度上缓解交通拥挤;从发展角度看,汽车租赁业的发展不仅可以带动中国的新车销售,同时还可以推动中国二手车的经营,为旧车交易注入新的内容;汽车租赁的特殊作用,可以带动多种相关行业的发展,融合产业间的联系,成为第二产业与第三产业间的联系纽带。

得益于以上三个方面的原因,汽车租赁业在我国迅速崛起,业务量也是越来越多,对信息的处理要求也是越来高,传统的汽车管理人员已不满足汽车租赁业务的需求发展。租赁管理就是对车辆信息和客户信息的管理,主要包括车辆的出租状态、车辆的基本信息、定单的管理等。由于这些过程间的关系复杂,有一对一的关系,一对多的关系,也有多对多的关系,所有这些工作使管理工作变得量大而又复杂,以前包括现在还有很多租赁公司采用人工管理,直接导致了错误的产生,服务质量的低下。租赁管理系统的开发使得这一状况得到了根本的改善。

因此我们将发挥计算的庞大的存储空间,高性能的处理效率,高度可靠的数据安全,清晰的可视化数据等这些资源的合理利用,真正达到减少劳动力提高劳动质量的目的。根据目前的情况我设计了一套具有网络功能的汽车租赁管理系统,客户可以通过网络查阅相关的汽车租赁情况,企业的管理人员可以根据客户的实际情况进行管理,具有很强的实用性,即方便又提高了工作效率。

1.2系统目标

使用MySQL数据库和JSP设计完成的汽车租赁管理系统,主要好处是一方面可

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

以方便租赁车辆信息共享,管理员上传租赁车辆的描述信息,图片,用户就可以在线浏览,对所属的租赁车辆有更感官的了解。当遇到不解的问题,还可以留言,等待管理员的解答。另一方面就是通过Internet网广泛平台,以及计算机庞大的存储空间,高性能的处理效率,高度可靠的数据安全等优点,准确的记录租赁信息,计算各种费用和租赁排行,生成表单给管理者直观的收入显示。将本系统应用到租赁汽车过程中,会大大增加租赁会员的数量,及时得到更新的租赁信息,第一时间上报事故违章等信息。方便管理员记录租赁情况,减少人工统计的时间,节省成本,加快汽车租赁的周期。

1.3系统开发环境技术介绍

为了更好的说明本系统,现将使用的重点技术做以简述。本项目的设计采用B/S(浏览器/服务器)结构,使用MySQL 数据库,Tomcat应用服务器平台,Sturcts2框架,以MyEclipse为开发工具进行系统实现。 1.3.1技术介绍

(1) JSP技术

为了快速方便地进行动态系统的开发,JSP在以下几个方面做了改进,使其成为快速建立跨平台的动态系统的首选方案。

① 将内容的生成和显示进行分离

使用HTML或者XML标识来设计和格式化最终页面,并使用JSP标识或者小脚本来生成页面上的动态内容(内容是根据请求变化的,例如请求账户信息或者特定的一瓶酒的价格等)。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在脚本中,所有的脚本在服务器端运行。由于核心逻辑被封装在标识和JavaBeans中,所以Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。

在服务器端,JSP引擎解释JSP标识和脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBC技术访问数据库或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这既有助于作者保护自己的代码,又能保证任何基于HTML的Web浏览器的完全可用性。

② 可重用组件

绝大多数JSP页面依赖于可重用的、跨平台的组件(JavaBeans或者Enterprise JavaBeans组件)来执行应用程序所要求的复杂的处理。开发人员能够共享和交换执

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

行普通操作的组件,或者使得这些组件为更多的使用者和客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。

③ 采用标识

Web页面开发人员不会都是熟悉脚本语言的编程人员。JSP技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。

④ 适应平台

几乎所有平台都支持Java,JSP+JavaBeans几乎可以在所有平台下通行无阻。从一个平台移植到另外一个平台,JSP和JavaBeans甚至不用重新编译,因为Java字节码都是标准的与平台无关的。

⑤ 数据库连接

Java中连接数据库的技术是JDBC,Java程序通过JDBC驱动程序与数据库相连,执行查询、提取数据等操作。

(2)级联样式表

CSS是Cascading Style Sheets(层叠样式表单)的简称。更多的人把它称作样式表。它是一种设计网页样式的工具。CSS语句就可以实现许多需要专业软件才可以达到的效果。利用属性可以设置字体、颜色、背景等页面格式;利用定位可以使页面布局更加规范、好看;利用滤镜可以使页面产生多媒体效果。

实际上CSS的代码都是由一些最基本的语句构成的。它的基本语句的结构是这样的:选择符{属性:属性值}

独立编辑好的CSS文档有两种方法加入到HTML文档中。一种是把CSS文档放到文档中,另一种方法是:把您编辑好的CSS文档保存成“.CSS”文件,然后在中定义。这时只需把编辑好的“.CSS”文件的详细路径名写进去就可以了。这种方法非常适宜同时定义多个文档。它能使多个文档同时使用相同的样式,从而减少了大量的冗余代码。

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

1.3.2系统开发环境

(1)硬件平台: 处理器:P4 1.8GHz。 内存:256MB以上。 (2)软件平台:

操作系统:Windows XP(推荐)/Windows 2000/Windows 2003。 数据库:MySQL。 开发环境:JAVA 1.6。 开发工具:Myeclipse 6.0.1。 开发语言:JSP。 服务器:Tomcat 6.0。

浏览器:IE 5.0 ,推荐使用IE 6.0。 分辨率:最佳效果1024×768像素。

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

2 系统分析

2.1可行性分析

2.1.1技术可行性分析

本系统采用MyEclipse作为开发工具,MySQL作为数据库。MyEclipse整合其他很多工具(比如Tomcat、Hibernate、UML工具等等)到它的IDE中一起工作,这样做一个工程就很方便了。可以比较轻松完成Strucs,Hibernate,Spring布局,编写Strtus-config.xml。MySQL使用了先进的数据库结构,可以为大型的Web站点和企业应用提供优良的扩展性和可靠的保证。同时,MySQL还为用户提供了重要的安全性功能,为用户的数据安全提供了可靠的保证。 2.1.2操作可行性分析

学习了J2EE编程技术,熟练掌握JSP技术等基础知识。通过课程设计MVC框架编程训练,掌握了架构的使用规则,应用模块组件的实现、测试、和维护,使用Tomcat服务器实现了系统的Browser/Server结构。

2.2需求分析

2.2.1模块功能需求

根据汽车租赁管理系统任务要求将系统划分为前台和后台2大模块,其中前台又包括2种权限的用户:游客和会员,后台包括管理员、第三方2种权限用户。

(1) 游客的主要功能需求: 游客可以浏览全部租赁车辆信息; 游客可以分类查看租赁车辆信息; 游客可以查看租赁排行; 游客可以进行会员注册; 游客可以进行留言。 (2) 会员的主要功能需求: 会员可以浏览全部租赁车辆信息; 会员可以分类查看租赁车辆; 会员可以查看租赁排行;

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

会员可以对租赁情况进行管理(还车,续租,事故和违章申报); 会员可以查看管理员对事故处理的反馈; 会员可以进行投诉,查看投诉回复; 会员可以进行留言。 (3) 管理员的主要功能需求: 管理员可以发布租赁车辆信息;

管理员可以对租赁车辆进行管理(更新,删除,送修); 管理员可以回复用户的投诉; 管理员可以对租赁订单进行审批;

管理员可以对事故违章的责任方进行审批; 管理员可以按月或者天生成财务报表。 (4) 第三方的主要功能需求: 第三方可以裁定事故责任方。 2.2.2系统数据流图

通过结构化分析方法,使用数据流图DFD描述系统中数据流程,标识了一个系统的逻辑输入和逻辑输出以及把逻辑转换逻辑输出所需的加工处理。

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

(1) 顶层数据流图

游客浏览查询要求浏览查询要求审批申请租赁订单留言留言回复浏览查询结果审批结果浏览查询结果注册信息留言报表车辆更新信息审批结果会员汽车租赁管理系统报表查询要求留言回复审批申请报表查询结果留言管理员审批结果车辆信息审批申请第三方租赁排行 图2.1 汽车租赁管理系统顶层数据流图

(2) 第一层数据流图

注册信息浏览查询要求P1:处理游客请求游客租赁排行车辆信息游客第三方P4:处理审批结果第三方请求会员审批申请浏览查询要求会员租赁订单审批结果租赁排行车辆信息会员P2:处理会员请求审批申请报表查询要求管理员更新车辆信息P3:处理管理员请求结批审果管理员报表

图2.2汽车租赁管理系统

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

(3) 第二层数据流图

在此对上述四个加工能进行细化。处理游客请求可以划分为浏览查询和注册。处理会员请求可以细化为浏览查询,登录,租赁,留言,事故反馈处理。处理管理员请求可以细化为发布新车辆,车辆更新,订单管理,事故管理,统计管理和留言回复。

浏览查询要求P1.1查询租赁排行车辆信息游客注册信息P1.2注册P1.3留言留言信息 图2.3处理游客请求细分

留言信息P2.1留言P2.2查询P2.3登录租赁订单P2.4租赁P2.5事故反馈处理浏览查询要求租赁排行车辆信息P3处理请申管理员请审批求审批申请P4处理第三方请求会员结审批果结果批审

图2.4处理会员请求细分

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

P3.1发布新车辆更新车辆信息P3.2统计管理车辆信息报表租赁订单P3.3车辆更新管理员车辆信息审批申请P3.4事故管理审批结果会员P3.5留言管理报表查询要求投复回诉审P3.6订单管理果结批

图2.5处理管理员请求细分

(4) 第三层数据流图

对加工2.4进一步进行划分,可以分为续租,租车,事故违章申请。

P2.4.1:续租租赁订单租赁订单P2.4.2:租车P2.4.3:还车P2.4.4:事故违章申请P3处理管理员要求订单审批结果批审故果事结审批申请会员事故审批申请P4处理第三方请求事故审批结果 图2.6加工“租赁车辆”分解

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

2.2.3数据字典

(1) 外部实体定义

名称:会员 输入数据流:查询信息、审批申请、租赁订单 输出数据流:审批结果、车辆信息、租赁排行

名称:游客 输入数据流:查询信息、注册信息 输出数据流:车辆信息、租赁排行

名称:管理员 输入数据流:车辆更新信息、审批结果、报表查询信息 输出数据流:报表

名称:第三方 输出数据流:审批结果

(2) 处理过程定义

名称:处理游客请求 编号:P1 输入数据流:浏览查询要求,注册信息,留言 输出数据流:浏览查询结果

名称:处理会员请求 编号:P2 输入数据流:浏览查询要求,留言,租赁订单,审批申请, 输出数据流:浏览查询结果,审批结果

名称:处理管理员请求 编号:P3 输入数据流:车辆更新信息,审批申请,报表查询要求,留言 输出数据流:审批结果,报表,留言回复

名称:处理第三方请求 编号:P4

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

输入数据流:审批申请 输出数据流:审批结果

(3) 数据流定义

名称:注册信息 编号:D1 数据流简述:注册会员需要填写的信息 数据来源:游客

数据项组成:[用户名|密码|邮箱|电话|性别]、租赁排行

名称:浏览查询要求 编号:D2 数据流简述:查询车辆信息 数据来源:游客、会员

数据项组成:[旅游租车|婚礼租车|商务租车]、租赁排行

名称:浏览查询结果 编号:D3 数据流简述:显示浏览查询的结果 数据去向:会员 数据项组成:车辆信息、租赁排行

名称:留言 编号:D4

数据流简述:各种留言,用户对车辆的评价,投诉 数据来源:游客、会员 数据项组成:留言,用户对车辆的评价,投诉

名称:留言回复 编号:D5 数据流简述:回复留言,用户对车辆的评价,投诉 数据去向:会员 数据项组成:回复用户对车辆的评价

名称:租赁订单 编号:D6

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

数据流简述:租赁信息描述 数据来源:会员

数据项组成:[身份证编号|还车时间|押金]

名称:审批申请 编号:D7 数据流简述:租车申请,事故责任方申请 数据来源:会员

数据项组成:[原因描述|花费|责任方]、租赁订单、申诉理由

名称:审批结果 编号:D8 数据流简述:审批订单和责任方 数据去向:会员

数据项组成:事故责任方、驳回理由

名称:车辆更新信息 编号:D9 数据流简述:新车辆发布、修改、删除、维修信息描述 数据来源:管理员 数据项组成:车辆信息

名称:报表查询要求 编号:D10 数据流简述:报表查询的条件描述 数据来源:管理员 数据项组成:[按天生成报表|按月生成报表]

名称:报表查询结果 编号:D11 数据流简述:得到的报表

数据去向:管理员 数据项组成:[日报表|月生成报表]

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

(4) 文件定义

名称:车辆信息 编号:F1 文件描述:存储车辆的基本信息

文件项组成:[汽车编名|汽车名称|类型|描述|日租金|图片|司机状况|状态]

名称:报表 编号:F2 文件描述:存储收入的表单 文件项组成:[日报表|月报表]

名称:租赁排行 文件描述:汽车租赁次数的存储 文件项组成:[汽车名|租赁次数] 编号:F3

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

3 系统设计

本章分别按照概要设计和详细设计进行描述。

3.1概要设计

概要设计中包括系统设计原则、系统模块设计、数据库概要设计等几点介绍。 3.1.1设计原则

本系统遵循软件工程规定的设计方法和步骤,对系统进行细致地分析研究后,确定了以下基本设计原则:

(1) 实用性:尽量选择成熟实用的技术,使得整个系统有一个安全、稳定的运行环境。

(2) 安全性:为了保障系统平稳正常的运行,以及数据的完整性,整个系统必须有很好的安全性,必须加强数据库的安全保密设计。

(3) 开放性:该系统在建设上必须加强标准化及采用统一的技术规范,以实现网络互联,资源共享,高效运行和科学管理。 3.1.2系统三层模式

本系统采用三层模式:表示层(JSP页面),业务逻辑层(DAO模式),控制层(ACTION)。DAO工厂模式,程序的业务的控制由控制器来负责,通过Structs.xml配置文件可以由系统负责判断某个JSP页面该调用哪个控制类中的哪个方法来处理请求,控制器再将请求的相关参数传递给实例好的DAO组件,进行页面跳转。

(1) 数据库连接

com.bus.utils包下设计了一个DBConnection.java类,有getConnection连接数据库方法,closeConnection关闭数据库连接方法,closePreparedStatement关闭结果集方法,closeResultSet关闭ResultSet方法

(2) 表示层

表示层主要是各个jsp页面,整个系统的实现通过主要页面的跳转控制实现。index.jsp:会员登录首页

show.jsp:车辆信息页面 leavejsp:用户留言页面

backstage.jsp:后台管理员登录页面

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

(3) 控制层

系统通过CSS文件来控制整个系统的布局和整体框架。通过下面几个控制页面的文件组成。前台控制页面为index.jsp,show.jsp,leavejsp为BusAction.java,GetBusAction.java 和控制。后台控制页面backstage.jsp 为AdminLoginAction.java FindComplaintAction.java和GetComplaintAction.java控制。其他的action控制在Structs.xml中体现。

(4) 业务逻辑层 ① 定义DAO工厂类 实例化Dao工厂类

private static DaoFactory instance=new DAOFactory();

String userDaoClass=\;

userDao=(UserDao)Class.forName(userDaoClass).newInstance();

获取实例方法:

public static DaoFactory getInstance(){

return instance; }

② 接口类

AdminDao.java 管理员登录模块接口 BusDao.java 车辆信息模块接口 LeaveAdminDao.java 留言管理模块接口 MaintainDao.java 车辆维修模块接口 OtherDao.java 事故维修管理模块接口 RegistrationDao.java 订单管理模块接口 RejectDao.java 第三方裁定模块接口 UserDao.java 会员模块接口 ③ 接口的实现和属性映射

在工厂类实例,定义实现接口的方法后,通过AdminDaoImpl.java实现接口。下面以管理员登录模块接口举例,其他接口实现原理都是一般,不做多的介绍。

String adminDaoClass=\;

adminDao=(AdminDao)Class.forName(adminDaoClass).newInstance(); public AdminDao getAdminDao(){

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

return adminDao;}

Public class AdminDaoImpl implements AdminDao{ Public Admin find Admin (String name){…} return admin;}

Pojo为普通的Java类文件,相当于JavaBean,避免与EJB混淆。它的主要功能为属性的映射,方便数据的读取。AdminDaoImpl.java实现管理员登录模块接口类Admin.java映射管理员属性。其余接口模块实现类似。 3.1.3系统模块设计

从整体角度出发,本系统主要包括前台和后台2个模块。前台分为游客功能模块和会员功能模块,后台分为管理员功能模块和第三方功能模块。

游客模块 前台 汽车租赁 管理系统 后台 第三方模块 管理员模块 会员模块

图3.1 汽车租赁管理系统模块图

3.1.4数据库概要设计

(1) E-R模型设计

经过需求分析阶段,得到了如图3.7所示的E-R图。一个游客可以注册成为会员,其中账号可以为多个。会员租赁车辆,一辆车不同时的情况可以被多个会员租赁,一个会员可以租赁多辆汽车。一个管理员管理多辆汽车,一辆汽车被多为管理员管理。第三方裁定会员是指对事故责任方的裁定。

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

管理员 n 审批 m m m 管理 n 订单 m m 管理 n 车辆 租赁 申请 1 会员 1 审批 第三方 事故

图3.2汽车租赁管理系统实体E-R图

(2) 逻辑设计

根据系统模块概要设计结果,以及数据库E-R模型分析结果,计划设计以下表,分别为管理员信息表、会员教师信息表、车辆详细信息、留言投诉评价相关信息,违章和事故详细信息、订单信息表、车辆维修信息表、申诉信息表具体说明如下:

管理员信息表:用来存放管理员信息。 汽车信息表:用来存放汽车信息。 留言投诉信息表:用来存放学生信息。 会员表:用来存放会员的信息。

订单管理员信息表:用来存放租赁订单信息。 违章事故信息表:用来存放违章事故的信息。

申诉信息表:用来存放会员对责任方审批驳回的信息。 车辆维修信息表:用来存放车辆维修的信息。

3.2详细设计

3.2.1模块详细设计

前台有2种权限用户(会员与游客)参与,它们分别参与了前台功能的某些模块,下面加以详述模块详细设计分别叙述4种不同权限用户的功能。后台亦有2种权限用户(管理员与第三方)参与,详细功能描述如下。

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

(1) 游客模块

注册模块:游客填写注册会员信息,注册成为会员

浏览查询模块:浏览全部租赁汽车信息,亦可分类查询商务租车、婚礼租车、旅游租车,查询汽车租赁排行。

留言投诉模块:用匿名的身份留言。

注册模块 浏览查询模块 留言模块 留言 图3.3游客模块图

注册会员 租赁排行 车辆分类查询 游客 (2) 会员模块

除了游客上面的浏览查询模块和留言模块外,会员还拥有以下功能模块。 租赁模块:包括四个方面:租车、还车、续租、事故违章。选择租赁车辆,填写预还车日期,缴纳押金,通过管理员审批订单成功后方能租车。续租时只要修改预还车时间,提交修改信息。违章情况,若租车本身带司机,违章情况的费用应该为公司负责,在结算时退还此费用给会员;不带司机则此费用自己负责。事故情况,若租车本身带司机,此事故费用为公司负责,在结算时退还此费用给会员。不带司机时,事故原因可能有2种:汽车老化和会员疏忽。填写事故的描述情况,选择责任方,交由后台管理员审批。审批通过则在结算时退还事故费用给会员。不通过写明驳回理由,会员可以通过申诉理由向第三方申请裁定责任方。第三方具有最终裁定的权利,若裁定为会员,则事故费用自己负责,裁定为公司结算时退还事故费用。还车时,租金计算,未超期则按照租车天数*日租价结算,超期则按照日租价*订单天数+超期天数*日租价*2结算。加上上述的违章事故的费用,减去已付的押金,得到最后找零。

事故反馈模块:会员责任方未通过管理员审批,向第三方提出申诉理由,申请第三方裁定责任方。

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

登录模块 登入/出系统 租车 续租 租赁模块 留言 车辆评价 会员 留言模块 投诉 投诉回复 浏览查询模块 还车 其它 事故 违章 租赁排行 车辆分类查询 事故反馈模块 请求第三方裁决 图3.4会员模块图

(3) 管理员模块

发布新车辆模块:管理员添加新租赁车辆的信息。

车辆管理模块:管理员修改车辆信息,删除租赁车辆的信息。添加维修信息,包括维修费用,维修天数和维修原因。维修状态包括维修中和OK,维修中表示此车尚不能出租,OK表示维修完成,可以出租。

留言反馈管理模块:回复会员的投诉。

订单管理模块:根据会员的订单,押金和身份信息,审批是否租赁此汽车。 事故管理模块:租赁过程中遭遇事故,会员认定为汽车原因,通过事故描述,审批责任方。认定责任方为会员,驳回事故申请,描述驳回理由。

统计管理模块:按照某一天生成收入报表或者按照某月生成收入报表。其中报表内容包括车辆的名字、租赁人、日租价、预计收益,租赁起始日期和结束日期,列出事故和违章类型、时间、原因、责任方、车辆名称、租赁人和花费。

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

发布新车辆 车辆管理 修改车辆信息 车辆维修信息 删除车辆 审批订单 按天生成报表 订单管理 管理员 统计管理 审批事故责任方 驳回理由 留言反馈管理 图3.5管理员模块图

按月生成报表 事故管理 投诉回复

(4) 第三方模块

事故管理模块:会员责任方申请被管理员驳回,根据会员的申诉条件裁定责任方,若为会员,事故费用自己负责;若为公司,还车时退还事故费用。第三方具有最终裁定权,裁定结果双方不得有意义。

第三方事故管理 图3.6第三方模块图

责任方裁定

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

3.2.2系统流程图

开始前台首页后台登录登录NN成功Y注册N成功登录成功Y留言租赁管理浏览查询事故反馈回复留言发布新车辆审批订单审批事故统计报表车辆管理N是否离开YY是否离开N结束

图3.7汽车租赁管理系统流程图

3.2.3数据库详细设计

(1) 表的数据结构

表3.1会员信息表(user)

字段名 id username password email tel sex

数据类型 int varchar varchar varchar varchar varchar

长度 11 16 16 30 11 1

约束 唯一 非空 非空 非空 非空 非空

描述 会员编号 会员姓名 密码 邮箱 联系电话 性别

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

表3.2汽车信息表(bus)

字段名 Id name type configuration

Daily img motorman state top

数据类型

int varchar varchar varchar varchar varchar int int int

长度 11 20 20 500 111 1000 1 1 111

表3.3管理员信息表(admin)

字段名 id admin password

表3.4事故违章申报表(other)

字段名 Id

数据类型

长度

约束

描述

数据类型 Int varchar varchar

长度 10 10 10

约束 唯一 非空 非空

描述 数据库编号 管理员帐号 管理员密码

约束 唯一 非空 非空 非空 非空 非空 非空 非空 非空

描述 汽车编号 汽车名称 汽车类型 描述信息 日租金 汽车图片 带司机情况

状态 租赁次数

int int int int varchar int date int int int

11 11 11 1 300 111 1 1 11

主键 非空 非空 非空 非空 非空 非空 非空 非空 非空

事故编号 会员编号 汽车编号 类型 事故原因 处理费用 申报时间 责任方 状态

租赁订单编号

userid busid type cause take time dutyown state registrationid

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

表3.5汽车维修信息表(maintain)

字段名 Id take date takeday cause busid state

表3.6租赁订单信息表(registration)

字段名 Id

数据类型

长度

约束

描述

数据类型

in varchar datetime int varchar int int

长度 11 20 11 100 11 1

约束 主键 非空 非空 非空 非空 非空 非空

描述 维修编号 维修费用 送修时间 维修时间 维修原因 汽车编号 维修状态

int int int date int int date int

11 11 11 1 111 18

主键 非空 非空 非空 非空 非空 非空 非空 非空

订单编号 会员编号 汽车编号 订单日期 归还日期 订单状态 押金 系统时间 身份证信息

userid busid regittime state subscription nowtime idcard

tenancyentdate date

表3.7第三方审批信息(reject)

字段名 Id

数据类型

长度

约束

描述

int int int int date varchar int int int

11 11 11 11 100 1 11 11

主键 非空 非空 非空 非空 非空 非空 非空 非空

审批编号 会员编号 汽车编号 订单编号 申诉日期 申诉原因 事故类型 系统时间 事故编号

userid busid registration date cause type check otherid

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

表3.8留言管理表(leaves)

字段名 Id userid content type backcontent busid

int

11

非空

汽车编号

数据类型

in int varchar varchar varchar

长度 11 11 300 1 300

约束 主键 非空 非空 非空 非空

描述 留言编号 留言者编号 留言内容 留言类型 留言回复

(2)表与表之间的关系

根据上述表的数据结构,下图为数据库表与表之间的关联,由于空间限制,表中只是列举了主键和与其他表有关系的属性。

maintain id busid leaves id userid busid bus id registration userid busid id ? user id ? admin id ? Others registrationid userid id busid reject id userid otherid busid

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

图3.8表间关系图

4 系统实现和问题解决

4.1游客功能实现

无任何权限用户(游客)进入系统能进行留言,分类查询和汽车排行。

图4.1游客模块实现图

4.2会员功能模块实现

4.2.1会员登录

会员进入系统需要进行身份验证,在系统首页输入输入用户名和密码与数据库中的注册信息进行比较。接到登录请求,调用LoginAction 控制,若通过验证则将进入index.jsp页面系统的主页面,如果失败则重新回到登录页面,并且显示错误提示信息。

/index.jsp /index.jsp

成功登录本系统后,比游客多了租赁管理,事故处理反馈和投诉回复。

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

图4.2会员登录模块实现图

4.2.2租赁模块实现

当成功租赁车辆后,租赁的记录会出现在租赁管理中,并可以进行还车,续租,其它(事故和违章)的管理。

图4.3会员租赁模块实现图

(1) 租赁车辆

图4.4会员租赁车辆功能实现图

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

/managebus.jsp /error.jsp

会员登陆本系统后,租赁车辆,页面上显示你要租车辆的信息,车辆图片,名称,日租价,配司机状况,配置描述。需要填写的信息包括身份证号,在日历控件中选择还车时间。若还车时间比系统时间早则提示出错信息,否则正常提交租赁请求,调用GetBusAction进行控制,交由后台管理员进行审批。

(2) 续租车辆

在租赁管理中选择续租车辆,在日历控件中选择还车时间,调用UpdateRegistration控制页面跳转。

/gorertbus.jsp

/giveinfo.jsp

(3) 其它

其它包括事故违章的的状况描述和责任方的申请。选择出现的状况类别,写明具体原因和花费,选择责任方。提交信息,通过管理员审批责任方,若审批成功,记录作为结算的依据。

/getuserbus.action /error.jsp

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

图4.5会员事故违章申请功能实现图

(4) 还车

还车时,系统会告知你换车的类别是正常还车还是提前还车,总的租金,出现违章和事故的次数和花费,违章事故的责任。根据押金计算找零数目,进行结算,对车辆进行评价和投诉。

图4.6会员还车功能实现图

4.2.3事故反馈处理模块

管理员驳回申请,写明理由,用户可以向申请第三方审批,得到最终的责任方判决结果。

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

type=\>mangeother.action

type=\>getUserOtherInfo.action

/error.jsp

图4.7申请第三方审批

4.3管理员管理模块实现

4.3.1发布新车辆实现

填写车辆名称,类型,日租价,是否配死机,基本配置,上传车辆图片,其中*为必填条件。添加成功,车辆会出现在系统首页,调用GetBusAction,BusAction进行控制。

图4.8发布新车辆实现图

/managebus.jsp /error.jsp

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

type=\>/getBus.action

/error.jsp

4.3.2车辆管理实现

读取车辆的信息,对车辆进行更新和修改的操作,说明维修的状况。

图4.9车辆管理实现

(1) 更新功能实现

需要填写的和发布新车辆填写的目录项一样,修改后车辆信息发生变化。

type=\>/getBus.action

/error.jsp

(2) 删除功能实现

删除车辆,车辆信息不出现在系统首页。

type=\>/getBus.action

/error.jsp

(3)维修状况说明

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

说明车辆的维修状况,包括费用,所需天数和原因。维修过程中汽车不出现在系统首页。维修完成后状态为OK,才能出现在系统首页参与租赁。

图4.10维修模块实现

getBus.action /error.jsp

method=\>

getBus.action /error.jsp

4.3.3订单管理实现

根据用户提交的租赁订单,押金审批租赁,通过审批租赁成功,否则驳回。

图4.11订单管理实现图

4.3.4事故管理

根据用户提出的事故违章申请的状况,判断责任方,同意,作为结算的依据,不同意驳回,写明理由。

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

图4.12事故管理实现图

4.3.5统计管理

输入查询报表的条件,按月还是按照某天进行查询。

/result.jsp

/error.jsp

/result.jsp

/error.jsp

图4.13统计管理实现图

4.4第三方审批实现

通过用户的申诉理由,最事故责任放进行最终的裁定。同意则做为最终结算的依据,不同意驳回。

图4.14第三方审批实现图

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

4.5问题解决

4.5.1技术问题

(1) 字符串过滤

注册登录过程中,输入登录名夹杂中文和英文,在数据库中显示为乱码数字。通过写一个过滤器FilterEncode.java类,过滤输入输出的格式为UTF-8编码(世

界通用的语言编码)解决。且每处理一个action控制都会走一次Fillter。

public void doFilter(ServletRequest request, ServletResponse response,

FilterChain chain) throws IOException, ServletException {

request.setCharacterEncoding(\); response.setCharacterEncoding(\); chain.doFilter(request, response);}

(2) 上传图片

在更新车辆的过程中,每次都要重新上传一次图片。更新页面中出现车辆的图片,当需要修改汽车图片时,再浏览上传图片即可。

String fileName =String.valueOf(new Date().getTime()) + \if (null != file) {bus.setImg(\ + \ + fileName);} else{bus.setImg(oldImg);}

(3) 邮件格式问题限制

游客注册师填写的邮件,除了要限制它的长度外还得限制邮件的格式。

function validate() {

var strEmail=document.getElementById(\).value; var reg =

/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\\.[a-zA-Z0-9_-]{2,3}){1,2})$/; if (reg.test(strEmail)) return true; else {

alert(\邮箱格式不正确\); return false; }

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

4.5.2逻辑处理

事故违章处理这块逻辑混乱。解决方案:用户提出事故和违章的申请,说明原因,租赁公司进行审批,通过事故原因判断是否是公司的责任。若是,记录费用情况,在结算时退还这笔费用,若不是,驳回请求,写明原因。用户得知申请被驳回,申请第三方决定。第三方通过用户申请,则管理员驳回的请求不算数,系统记录费用情况,在结算时退还这笔费用。驳回则用户不能继续申诉,第三方的审批结果是最终的裁决结果。

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

5 系统测试

软件测试是软件开发过程的重要组成部分,为了发现错误而执行程序的过程。软件测试在软件生存周期中横跨两个阶段:通常在编写出每一个模块之后就对它做必要的测试,称为单体测试。编码和单体测试属于软件生存期的同一个阶段。下边介绍系统编码过程中出现的一些测试用例:

(1) 游客浏览系统的权限

① 测试目的:区别会员和游客的功能,游客浏览时需要有一定的权限。 ② 预期的结果:没有注册为本站会员的游客,不享有租车,还车,续租和投诉的功能。

③ 实际的结果:游客只可以浏览,查看排行和用户留言功能。 ④ 修改方法:可以在首页加入以下一段程序:

通过获取属性的方法判断会员名是否为空,为空则为游客,不为空则是会员

<%if(session.getAttribute(\null){ %><%}else{ %> 欢迎会员<%=session.getAttribute(\访问!!

(2) 系统中的分页

① 测试目的:查看系统中的分页是否可以使用。

② 预期的结果:车辆展示页,定单页,留言页和投诉页的效果。 ③ 实际的结果:分页可以使用。 (3) 系统中的上车辆图片上传

① 测试目的:查看后台发布的车辆是否能上传图片。 ② 预期的结果:完成上传图片功能。 ③ 实际的结果:可以上传。

④ 修改方法:上传action上中入以下代码:

String fileName=String.valueOf(new Date().getTime())+\

InputStream is = new FileInputStream(file); String root

ServletActionContext.getRequest().getRealPath(\

File upfile = new File(root, fileName);

OutputStream os = new FileOutputStream(upfile);

需要本论文完整程序源代码,答辩PPT,开题报告等全套资料,请联系本文档上传者QQ

byte[] buffer = new byte[400]; int length = 0;

while ((length = is.read(buffer)) > 0) { }

is.close();

os.close();

os.write(buffer, 0, length);

本文来源:https://www.bwwdw.com/article/51q.html

Top