一、引言

汽车租赁管理系统是基于MVC三层架构完成,使用Java语言开发,主要应用Jsp完成前台界面部分,Servlet MVC完成后台逻辑部分。

本系统的设计从现实角度出发,根据实际汽车租赁信息管理系统的实际需求,采用模块化设计,便于系统组合和修改,又便于技术维护人员更新、维护;以及根据用户需求进行数据的维护与更新。系统的设计过程由概述、需求分析、技术方案、总体设计、详细设计、软件测试、总结等部分构成。

二、需求分析

汽车租赁业被称为交通运输服务行,它因为无须办理保险、无须年检维修、车型可随意更换等优点,以租车代替买车来控制企业成本,这种在外企中十分流行的管理方式,正慢慢受到国内企事业单位和个人用户的青睐。 汽车租赁是指将汽车的资产使用权从拥有权中分开,出租人具有资产所有权,承租人拥有资产使用权,出租人与承租人签订租赁合同,以交换使用权利的一种交易形式。

2.1系统角色

本系统有四个角色分别为:超级管理员,管理员,业务员,经理,分别具有不同的权限对汽车信息、顾客信息进行编辑。

2.2 系统权限

不同角色登录就有着不同的权限:

超级管理员:具有系统管理、基础数据管理、车辆预定管理、核心业务管理和统计管理的权限。其中系统管理包括用户管理、角色管理;基础数据管理包括客户类型管理、汽车品牌类型管理、汽车基本信息管理和客户基本信息管理;车辆预定管理包括顾客基本信息管理和汽车信息管理;核心业务管理包括租赁管理和归还管理;统计管理包括统计车辆管理和用户统计管理

管理员:具有用户管理、车辆基础信息管理、客户基础信息管理的权限

业务员:具有车辆预定管理和车辆取消预订管理的权限

每个角色:都有个人信息管理权限,超级管理员可以修改个人基本信息,包括密码修改,更改管理员、业务员、经理的权限,同时可以添加所有的软件用户

2.3 数据库需求

2.3.1 数据库E-R图

本系统的主要的实体有用户,汽车故障,汽车。它们对应的实体ER图如下所示。

2.3.2系统管理模块

该系统数据库共有九个实体,实体属性图如下面所示。

用户信息实体图如图2-2所示:

角色信息实体图如图2-3所示:

菜单信息实体图如图2-4所示:

管理员信息实体图如图2-5所示:

员工信息实体图如图2-6所示:

汽车信息实体图如图2-7所示:

2.4 功能列表

三、概要设计

3.1 系统功能模块分析

按照需求分析中的功能列表,以及对每个模块的功能分析,可以整理得出系统的功能模块总体结构如图3-1所示:

3.1.1 系统管理

系统管理包括用户管理和角色管理两个子模块。用户管理可以对用户进行增删改查,并能为用户分配会员角色;同样,角色管理也具有增删改查的功能,且能为角色分配权限。

3.1.2 基础数据管理

基础数据管理包括客户类型管理、车辆品牌管理、车辆基础信息管理和客户基础信息管理。客户类型管理可以更新会员的分类信息、折扣信息;车辆品牌管理可以对已有车辆的品牌信息进行增删改查;车辆基础信息管理可以对车辆的基本信息进行添加、修改、查询、删除;客户基础信息管理可以对客户的基本信息进行增删改查。基础数据管理主要用于对车辆、客户的信息以及相关的信息进行管理。

3.1.3 车辆预定管理

车辆预定管理包括车辆预定管理和车辆取消预订管理;车辆预定管理是对车辆预定状态的更新,可以修改车辆的状态显示信息;车辆取消预订管理则是对车辆预定状态的注销。

3.1.4 核心业务管理

超级管理员可以对核心业务进行操作,租赁管理可以对所有正在租赁的汽车进行管理,归还管理用于记录已归还的汽车。

3.1.5 统计管理

统计管理包括统计车辆管理和用户统计管理,统计车辆管理用于对本月已租赁车辆生成统计报表,用户统计管理则用于统计本月租借车辆的用户的人数。

3.2 系统用例

在汽车租赁管理系统中包含四类角色,分别为超级管理员、管理员、业务员和经理。

3.2.1 系统管理员

超级管理员的功能为核心业务管理和统计管理。超级管理员的用例如图4-2所示:

3.2.2 管理员

管理员的功能是对用户及汽车的基本信息进行增删改查的管理。管理员的用例如图4-3所示:

3.2.3 业务员

业务员的功能是对目前可租借汽车的查询以及预定和取消预订汽车。业务员的用例如图4-4所示:

3.2.4 经理

经理的功能是对车辆统计报表以及客户类型的更新。经理的用例如图4-5所示:

3.3 数据库设计

web_sys_user:用户信息表

字段名称

含义

数据类型

是否主键

是否外键

其他约束

user_id

用户id

int

自增长

account

账号

varchar(50)

非空

password

密码

varchar(50)

非空

user_name

用户名

varchar(50)

非空

sex

性别

varchar(50)

telphone

联系方式

varchar(50)

user_status

状态

varchar(1)

默认为1

fk_role_id

角色id

varchar(50)

web_sys_role:角色信息表

字段名称

含义

数据类型

是否主键

是否外键

其他约束

role_id

角色id

int

自增长

role_name

角色名称

varchar(50)

非空

role_status

状态

varchar(1)

默认为1

photo

图片

varchar(50)

role_desc

描述

varchar(50)

web_sys_menu:菜单信息表

字段名称

含义

数据类型

是否主键

是否外键

其他约束

menu_id

菜单id

int

自增长

menu_name

菜单名称

varchar(50)

非空

parent_id

父节点

varchar(50)

url

路径

varchar(50)

role_link_menu:角色菜单中间表

字段名称

含义

数据类型

是否主键

是否外键

其他约束

link_id

连接id

int

自增长

role_fk_id

角色id

int

非空

menu_fk_id

菜单id

int

非空

car:汽车租借表

字段名称

含义

数据类型

是否主键

是否外键

其他约束

car_id

汽车id

int

自增长

car_code

车牌号

varchar(50)

非空

car_name

车名

varchar(50)

非空

car_color

颜色

varchar(50)

car_info

租借人

varchar(50)

car_fk_type

车辆id

varchar(50)

car_type:汽车类型表

字段名称

含义

数据类型

是否主键

是否外键

其他约束

type_id

汽车品牌id

int

自增长

type_name

品牌名称

varchar(50)

非空

type_desc

汽车描述

varchar(225)

四、详细设计

4.1系统类图

使用MyEclipse开发工具截出系统的主要类图。

客户类型的主要类图如图所示:

租车服务主要类图如图所示:

4.2用户登录

4.2.1 登录实现

用户登录信息需要满足客户端校验和服务端校验才能登录成功。当用户名和密码都正确时,先从用户和角色的中间表遍历该用户扮演的角色,再根据角色从角色和权限的中间表遍历该用户拥有的功能权限,最终,将用户的个人信息及其具有的功能显示到首页。

4.2.2 异常处理

异常主要包括用户名或密码为空、用户名或密码在数据库中不存在。根据异常原因,将在对应的输入框后面显示提示信息。

4.2.3 主要实现方法在登陆界面设置按钮,并且利用Onclick连接事件toSub(),进行判断用户名和密码是否为空

在web.xml文件中配置相应文件,点击登录按钮,将输入的表单信息提交到UserLoginServlet中。在Login.jsp中将传过来的用户名和密码与数据库用户表中的信息进行比较,满足校验,根据用户名获取相应角色,再根据角色获取相关权限,成功登录系统主界面main.jsp。登录失败,返回Login.jsp

登录流程如图4-4所示:

4.3 基本信息管理

基本信息管理包括客户类型管理、车辆品牌管理、车辆基础信息管理、客户基础信息管理。

4.3.1 租借信息添加实现

添加租借汽车的基本信息需要输入租借人基本信息租借车辆品牌租借车辆车牌号等。添加成功时,主键id自动生成。

4.3.2 异常处理

异常主要包括输入信息为空、输入信息格式不正确。根据异常原因,将在对应的输入框后面显示提示信息。

4.3.3 主要实现方法

用Onclick将按钮连接事件触发相应的方法进行校验。验证通过进行数据添加,故障添加流程图,如图5-6所示:

4.4 车辆预定管理

车辆预定管理包括车辆预定管理和车辆取消预订管理。

4.4.1 车辆预定和取消预订编辑实现

选择编辑或注销按钮触发相应的事件,进入编辑页面进行编辑或者进行注销操作。操作完成后更新页面和数据库。

4.4.2 异常处理

异常主要包括输入信息为空、输入信息格式不正确。根据异常原因,将在对应的输入框后面显示提示信息。是否进行注销操作的友好界面提示。

4.4.3 主要实现方法

用Onclick将按钮连接点击事件触发相应的方法进行校验。车辆编辑流程图,如图4-7所示:

五、系统实现

5.1 登录界面

5.2 初始界面

5.3 添加租车信息界面

5.4 菜单栏界面

5.5 添加汽车预订信息

六、总结

经过近两个星期的努力,终于设计出一个达到程序设计要求的数据库。其功能完整,用户界面良好,但是也存在着某些缺陷。需要进一步的得到改善纠正。总的来说基本达到了用户的基本要求。 这一段时间的工作努力,最后的结果固重要,但更重要的是它让自己了解了信息系统设计的一般过程。在接受客户的一个项目的时候,首先是进行系统分析。既首先分析其以后的销售情况以及技术可行性。如果二者可行,我们接下来做的就是总体设计。我们首先必须听取客户的要求,将其提出的功能按某种方式划分为几种模块。这就是整体设计。在对每一个模块进行细化形成最为简单的模块。然后是考虑每一细化模块的算法并将其用语言刻画出来。这就是详细设计。这就迈出了最为关键的一步。剩下的就是编译测试阶段。这是编程的必经阶段,也是我们劳动结果的验金石。只有得到我们期望的结果我们才算真正完成了任务。最后是软件的维护。在软件的使用过程中不可避免地会出现一些错误,因此维护便是必不可少的。这便是完成一个项目必经的过程。

参考文献

[1] 张志峰,郑璐娟,张建伟,宋胜利.JSP程序设计与项目实训教程[M].北京:清华大学出版社,2012.

[2] 隋春荣,耿超,董万全.JSP程序开发实用教程[M].北京:清华大学出版社,2013.

[3] 李颖, 赵菲, 刘长勇,等. 项目教学法在《Java Web程序设计》课程中的应用[J]. 科技创新与应用, 2013, (13):284-285.

[4] 薛倩.基于JSP技术企业动态网站系统设计与实现[J].北京:微型电脑应用,2014, 30(2):14-17. DOI:10.3969/j.issn.1007-757X.2014.02.004.

[5] 李峰, 刘彦隆. 基于SSH框架与jQuery技术的JavaWeb开发应用[J]. 科技情报开发与经济, 2010, 20(6):106-108. DOI:10.3969/j.issn.1005-6033.2010.06.047.

[6] 付国辉. 企业级Sql Server数据库的性能优化研究探讨[D]. 吉林大学, 2013.

[7] 程茂, 温静, 吴玉洁. 《软件测试》课程的教学研究[J]. 河北师范大学学报:教育科学版, 2010, 12(4):117-120.

[8] 孙卫琴,李洪成.Tomcat与Java Web开发技术详解[M].北京:电子工业出版社,2010.

[9] 刘京华.Java Web整合开发王者归来[M].北京:清华大学出版社,2010.

本系统采用jsp和mysql_课内资源 - 基于Jsp和MySql的汽车租赁系统相关推荐

  1. jsp mysql问卷调查_课内资源 - 基于JSP的在线调查问卷系统

    一.系统架构图 用户登入功能,由login.jsp页面和LoginServlet.java组成,页面用于填写用户名和密码:Servlet用于验证是否可以登入,如果能够登入,则将用户登入时间记录到数据库 ...

  2. mysql请假表需要什么_课内资源 - 基于JSP和MYSQL数据库实现的请假管理系统

    1 系统概述 1.1 系统说明 该系统用于海宁市医院的员工请假的专用请假系统,将员工请假的申请.审批.查询流程规范化,并进行必要的记录,为后面奖金的发放和人事升迁做参考. 同时该系统还支持管理员对用户 ...

  3. 局域网聊天程序 java MySQL_课内资源 - 基于JAVA的局域网聊天软件的设计与实现(仿制QQ)...

    一.系统分析 1.1 问题描述客户端 实现简易版的局域网聊天器 实现富文本内容聊天 智能聊天机器人 群发消息 传送文件等功能 服务器端 实现群发通知 管理聊天线程 1.2 系统功能分析客户端功能 登陆 ...

  4. mysql餐馆点餐系统_课内资源 - 基于Jsp和MySql的餐厅点餐系统

    1 总体概述 本设计主要通过HTML.CSS.JavaScript网页开发技术,会话及其会话技术,过滤器技术,Java语言以及连接mysql数据库来实现一个具有登录注册功能,且登录页面使用验证码技术来 ...

  5. jsp mysql在线考试系统源码_课内资源 - 基于JSP和MYSQL数据库实现的在线考试系统...

    1 系统概述 1.1 功能模块 教学部需要考试系统,该考试系统需要完成如下功能: 考试系统只针对于Java课程,题目全部为单项选择,共10题 学生注册.登录 后台管理员功能:题库管理.录入试卷.修改试 ...

  6. java基本语法借阅_课内资源 - 基于Java和MySql实现的光盘借阅管理系统

    一.需求设计以下几个类:光盘类:用户类:借阅记录类,包括下列模块: 新建.修改.删除光盘信息 新建.修改.删除用户信息 光盘借阅/归还信息记录 查询光盘名称,用户的借阅历史 要求:基于JFrame窗体 ...

  7. 基于JAVA+Swing+MYSQL的汽车租赁系统

    项目功能: 本系统主要完成前台浏览(用户注册,信息修改,车辆浏览),后台管理(车辆信息的录入,管理员登录)等功能.通过以上功能实现简单,便捷的租车系统. 车辆浏览:所有人都可以操作,顾客可以随意浏览车 ...

  8. Swing + MySQL实现汽车租赁系统4.0

    Swing + MySQL实现汽车租赁系统4.0 引言 始 需求分析 系统功能结构图 类图 使用说明 部分代码 JDBC连接MySQL(需导入jar包) 登录界面 用户端界面 测试 用户注册 登录界面 ...

  9. java项目:基于Springboot+Vue+Element实现汽车租赁系统

    作者主页:编程指南针 作者简介:Java领域优质创作者.CSDN博客专家 .掘金特邀作者.多年架构师设计经验.腾讯课堂常驻讲师 主要内容:Java项目.毕业设计.简历模板.学习资料.面试题库.技术互助 ...

最新文章

  1. 气泡形提示控件grumble.js
  2. __attribute__函数的作用
  3. 计算机科学与技术专家报告内容,计算机科学与技术专业设计报告大学内容.docx...
  4. MAVEN自定义项目骨架
  5. group by配合“聚合函数”才有意义
  6. 红茶一杯话Binder(初始篇)
  7. jquery页面隐藏和展开之间切换
  8. 【Mybatis架构】Mapper映射文件中的#{}与${}
  9. jquery开发手册(详细全面)
  10. EasyCamera海康摄像机向EasyDarwin云平台推送音视频数据的缓存设计
  11. 西安交大计算机考研分数线2020院线,2020西安交通大学考研复试分数线已公布
  12. MAC打开outlook提示”正在修复 Main Profile“
  13. 教妹学 Java:晦涩难懂的泛型
  14. Studio 3T 破解教程 mogodb
  15. GT21L16S2Y点阵数据的读取显示
  16. 5G取代光纤宽带,有可能吗?
  17. win10系统启动VMware虚拟机就蓝屏
  18. python CTP 更换前置机重连
  19. Boosted Cascaded Convnets for Multilabel Classification of Thoracic Diseases in Chest Radiographs翻译
  20. matlab lognpdf用法,求助大神

热门文章

  1. 智慧水务系统方案介绍(什么是智慧水务系统)
  2. Vimium 常用快捷键
  3. 如何测试 LoRaWAN 全球频段
  4. 这个PDF转换成Word的技巧,100%让你相见恨晚
  5. 〖Kindle Paperwhite〗升级、越狱、换屏保教程
  6. php mysql收款系统下载_php+mysql简易扫码付教育收费系统 v1.2
  7. DNSPod域名解析TXT类型
  8. 有趣问题——小白鼠试毒
  9. 纪念日,记录生活的美好瞬间
  10. Shell脚本中获取本机ip地址,Linux获取本地ip地址