汽车租赁管理系统毕业设计论文Word下载.docx
《汽车租赁管理系统毕业设计论文Word下载.docx》由会员分享,可在线阅读,更多相关《汽车租赁管理系统毕业设计论文Word下载.docx(40页珍藏版)》请在冰豆网上搜索。
由于这些过程间的关系复杂,有一对一的关系,一对多的关系,也有多对多的关系,所有这些工作使管理工作变得量大而又复杂,以前包括现在还有很多租赁公司采用人工管理,直接导致了错误的产生,服务质量的低下。
租赁管理系统的开发使得这一状况得到了根本的改善。
因此我们将发挥计算的庞大的存储空间,高性能的处理效率,高度可靠的数据安全,清晰的可视化数据等这些资源的合理利用,真正达到减少劳动力提高劳动质量的目的。
根据目前的情况我设计了一套具有网络功能的汽车租赁管理系统,客户可以通过网络查阅相关的汽车租赁情况,企业的管理人员可以根据客户的实际情况进行管理,具有很强的实用性,即方便又提高了工作效率。
1.2系统目标
使用MySQL数据库和JSP设计完成的汽车租赁管理系统,主要好处是一方面可以方便租赁车辆信息共享,管理员上传租赁车辆的描述信息,图片,用户就可以在线浏览,对所属的租赁车辆有更感官的了解。
当遇到不解的问题,还可以留言,等待管理员的解答。
另一方面就是通过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或者EnterpriseJavaBeans组件)来执行应用程序所要求的复杂的处理。
开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者和客户团体所使用。
基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。
③采用标识
Web页面开发人员不会都是熟悉脚本语言的编程人员。
JSP技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。
标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。
④适应平台
几乎所有平台都支持Java,JSP+JavaBeans几乎可以在所有平台下通行无阻。
从一个平台移植到另外一个平台,JSP和JavaBeans甚至不用重新编译,因为Java字节码都是标准的与平台无关的。
⑤数据库连接
Java中连接数据库的技术是JDBC,Java程序通过JDBC驱动程序与数据库相连,执行查询、提取数据等操作。
(2)级联样式表
CSS是CascadingStyleSheets(层叠样式表单)的简称。
更多的人把它称作样式表。
它是一种设计网页样式的工具。
CSS语句就可以实现许多需要专业软件才可以达到的效果。
利用属性可以设置字体、颜色、背景等页面格式;
利用定位可以使页面布局更加规范、好看;
利用滤镜可以使页面产生多媒体效果。
实际上CSS的代码都是由一些最基本的语句构成的。
它的基本语句的结构是这样的:
选择符{属性:
属性值}
独立编辑好的CSS文档有两种方法加入到HTML文档中。
一种是把CSS文档放到<
head>
文档中,另一种方法是:
把您编辑好的CSS文档保存成“.CSS”文件,然后在<
中定义。
这时只需把编辑好的“.CSS”文件的详细路径名写进去就可以了。
这种方法非常适宜同时定义多个文档。
它能使多个文档同时使用相同的样式,从而减少了大量的冗余代码。
1.3.2系统开发环境
(1)硬件平台:
处理器:
P41.8GHz。
内存:
256MB以上。
(2)软件平台:
操作系统:
WindowsXP(推荐)/Windows2000/Windows2003。
数据库:
MySQL。
开发环境:
JAVA1.6。
开发工具:
Myeclipse6.0.1。
开发语言:
JSP。
服务器:
Tomcat6.0。
浏览器:
IE5.0,推荐使用IE6.0。
分辨率:
最佳效果1024×
768像素。
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)会员的主要功能需求:
会员可以浏览全部租赁车辆信息;
会员可以分类查看租赁车辆;
会员可以查看租赁排行;
会员可以对租赁情况进行管理(还车,续租,事故和违章申报);
会员可以查看管理员对事故处理的反馈;
会员可以进行投诉,查看投诉回复;
会员可以进行留言。
(3)管理员的主要功能需求:
管理员可以发布租赁车辆信息;
管理员可以对租赁车辆进行管理(更新,删除,送修);
管理员可以回复用户的投诉;
管理员可以对租赁订单进行审批;
管理员可以对事故违章的责任方进行审批;
管理员可以按月或者天生成财务报表。
(4)第三方的主要功能需求:
第三方可以裁定事故责任方。
2.2.2系统数据流图
通过结构化分析方法,使用数据流图DFD描述系统中数据流程,标识了一个系统的逻辑输入和逻辑输出以及把逻辑转换逻辑输出所需的加工处理。
(1)顶层数据流图
图2.1汽车租赁管理系统顶层数据流图
(2)第一层数据流图
图2.2汽车租赁管理系统
(3)第二层数据流图
在此对上述四个加工能进行细化。
处理游客请求可以划分为浏览查询和注册。
处理会员请求可以细化为浏览查询,登录,租赁,留言,事故反馈处理。
处理管理员请求可以细化为发布新车辆,车辆更新,订单管理,事故管理,统计管理和留言回复。
图2.3处理游客请求细分
图2.4处理会员请求细分
图2.5处理管理员请求细分
(4)第三层数据流图
对加工2.4进一步进行划分,可以分为续租,租车,事故违章申请。
图2.6加工“租赁车辆”分解
2.2.3数据字典
(1)外部实体定义
名称:
会员
输入数据流:
查询信息、审批申请、租赁订单
输出数据流:
审批结果、车辆信息、租赁排行
游客
查询信息、注册信息
车辆信息、租赁排行
管理员
车辆更新信息、审批结果、报表查询信息
报表
第三方
审批结果
(2)处理过程定义
处理游客请求编号:
P1
浏览查询要求,注册信息,留言
浏览查询结果
处理会员请求编号:
P2
浏览查询要求,留言,租赁订单,审批申请,
浏览查询结果,审批结果
处理管理员请求编号:
P3
车辆更新信息,审批申请,报表查询要求,留言
审批结果,报表,留言回复
处理第三方请求编号:
P4
审批申请
(3)数据流定义
注册信息编号:
D1
数据流简述:
注册会员需要填写的信息
数据来源:
数据项组成:
[用户名|密码|邮箱|电话|性别]、租赁排行
浏览查询要求编号:
D2
查询车辆信息
游客、会员
[旅游租车|婚礼租车|商务租车]、租赁排行
浏览查询结果编号:
D3
显示浏览查询的结果
数据去向:
留言编号:
D4
各种留言,用户对车辆的评价,投诉
留言,用户对车辆的评价,投诉
留言回复编号:
D5
回复留言,用户对车辆的评价,投诉
回复用户对车辆的评价
租赁订单编号:
D6
租赁信息描述
[身份证编号|还车时间|押金]
审批申请编号:
D7
租车申请,事故责任方申请
[原因描述|花费|责任方]、租赁订单、申诉理由
审批结果编号:
D8
审批订单和责任方
会员
事故责任方、驳回理由
车辆更新信息编号:
D9
新车辆发布、修改、删除、维修信息描述
车辆信息
报表查询要求编号:
D10
报表查询的条件描述
[按天生成报表|按月生成报表]
报表查询结果编号:
D11
得到的报表
[日报表|月生成报表]
(4)文件定义
车辆信息编号:
F1
文件描述:
存储车辆的基本信息
文件项组成:
[汽车编名|汽车名称|类型|描述|日租金|图片|司机状况|状态]
报表编号:
F2
存储收入的表单
[日报表|月报表]
租赁排行编号:
F3
汽车租赁次数的存储
[汽车名|租赁次数]
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:
后台管理员登录页面
(3)控制层
系统通过CSS文件来控制整个系统的布局和整体框架。
通过下面几个控制页面的文件组成。
前台控制页面为index.jsp,show.jsp,leavejsp为BusAction.java,GetBusAction.java和控制。
后台控制页面backstage.jsp为AdminLoginAction.javaFindComplaintAction.java和GetComplaintAction.java控制。
其他的action控制在Structs.xml中体现。
(4)业务逻辑层
①定义DAO工厂类
实例化Dao工厂类
privatestaticDaoFactoryinstance=newDAOFactory();
StringuserDaoClass="
com.bus.dao.impl.UserDaoImpl"
;
userDao=(UserDao)Class.forName(userDaoClass).newInstance();
获取实例方法:
publicstaticDaoFactorygetInstance(){
returninstance;
}
②接口类
AdminDao.java管理员登录模块接口
BusDao.java车辆信息模块接口
LeaveAdminDao.java留言管理模块接口
MaintainDao.java车辆维修模块接口
OtherDao.java事故维修管理模块接口
RegistrationDao.java订单管理模块接口
RejectDao.java第三方裁定模块接口
UserDao.java会员模块接口
③接口的实现和属性映射
在工厂类实例,定义实现接口的方法后,通过AdminDaoImpl.java实现接口。
下面以管理员登录模块接口举例,其他接口实现原理都是一般,不做多的介绍。
StringadminDaoClass="
com.bus.dao.impl.AdminDaoImpl"
adminDao=(AdminDao)Class.forName(adminDaoClass).newInstance();
publicAdminDaogetAdminDao(){
returnadminDao;
}
PublicclassAdminDaoImplimplementsAdminDao{
PublicAdminfindAdmin(Stringname){…}
returnadmin;
Pojo为普通的Java类文件,相当于JavaBean,避免与EJB混淆。
它的主要功能为属性的映射,方便数据的读取。
AdminDaoImpl.java实现管理员登录模块接口类Admin.java映射管理员属性。
其余接口模块实现类似。
3.1.3系统模块设计
从整体角度出发,本系统主要包括前台和后台2个模块。
前台分为游客功能模块和会员功能模块,后台分为管理员功能模块和第三方功能模块。
图3.1汽车租赁管理系统模块图
3.1.4数据库概要设计
(1)E-R模型设计
经过需求分析阶段,得到了如图3.7所示的E-R图。
一个游客可以注册成为会员,其中账号可以为多个。
会员租赁车辆,一辆车不同时的情况可以被多个会员租赁,一个会员可以租赁多辆汽车。
一个管理员管理多辆汽车,一辆汽车被多为管理员管理。
第三方裁定会员是指对事故责任方的裁定。
图3.2汽车租赁管理系统实体E-R图
(2)逻辑设计
根据系统模块概要设计结果,以及数据库E-R模型分析结果,计划设计以下表,分别为管理员信息表、会员教师信息表、车辆详细信息、留言投诉评价相关信息,违章和事故详细信息、订单信息表、车辆维修信息表、申诉信息表具体说明如下:
管理员信息表:
用来存放管理员信息。
汽车信息表:
用来存放汽车信息。
留言投诉信息表:
用来存放学生信息。
会员表:
用来存放会员的信息。
订单管理员信息表:
用来存放租赁订单信息。
违章事故信息表:
用来存放违章事故的信息。
申诉信息表:
用来存放会员对责任方审批驳回的信息。
车辆维修信息表:
用来存放车辆维修的信息。
3.2详细设计
3.2.1模块详细设计
前台有2种权限用户(会员与游客)参与,它们分别参与了前台功能的某些模块,下面加以详述模块详细设计分别叙述4种不同权限用户的功能。
后台亦有2种权限用户(管理员与第三方)参与,详细功能描述如下。
(1)游客模块
注册模块:
游客填写注册会员信息,注册成为会员
浏览查询模块:
浏览全部租赁汽车信息,亦可分类查询商务租车、婚礼租车、旅游租车,查询汽车租赁排行。
留言投诉模块:
用匿名的身份留言。
图3.3游客模块图
(2)会员模块
除了游客上面的浏览查询模块和留言模块外,会员还拥有以下功能模块。
租赁模块:
包括四个方面:
租车、还车、续租、事故违章。
选择租赁车辆,填写预还车日期,缴纳押金,通过管理员审批订单成功后方能租车。
续租时只要修改预还车时间,提交修改信息。
违章情况,若租车本身带司机,违章情况的费用应该为公司负责,在结算时