springboot代驾网站 毕业设计-附源码281031

基于springboot代驾网站

摘 要

在信息飞速发展的今天,网络已成为人们重要的信息交流平台。每天都有大量的代驾订单需要通过网络发布,为此,本人开发了一个基于B/S(浏览器/服务器)模式的代驾网站。

该系统以Java编程语言、Mysql和MVVM等为开发技术,实现了添加、修改、查看、删除系统数据。本系统采取组件化的方式对系统进行拆分,并对数据库中各个表的增删查改、表与表之间的约束关系进行分析与设计,最终实现符合用户需求功能的商业级应用。

系统界面简洁大方,布局合理,易操作易上手。对应用户的每一步操作,系统都能高响应地做出反馈。系统具体包含对首页、站点管理(轮播图、公告栏)用户管理(管理员、用户、代驾员)内容管理(论坛列表、论坛分类列表、新闻列表、新闻分类列表)更多管理(车辆信息、直达车接单、代驾车信息、直达车信息、直达车预订、代驾预订、代驾车接单)、等功能,为代驾网提供一个管理平台,实现对数据地高效、安全地管理。

关键词:B/S模式,Java编程语言,易操作

Driving website based on springboot

Abstract

Today, with the rapid development of information, the network has become an important information exchange platform for people. A large number of driving orders need to be released through the network every day. Therefore, I developed a driving website based on B / S (Browser / server) mode.

The system takes Java programming language, MySQL and MVVM as development technologies to add, modify, view and delete system data. The system adopts the component-based way to split the system, and analyzes and designs the addition, deletion, query and modification of each table in the database, and the constraint relationship between tables, so as to finally realize the commercial application that meets the needs of users.

The system interface is simple and generous, the layout is reasonable, easy to operate and easy to use. The system can respond to each step of the user's operation with high response. The system specifically includes more management of homepage, site management (rotation chart, bulletin board), user management (administrator, user, Valet driver), content management (forum list, forum classification list, news list, news classification list) (vehicle information, direct train order receiving, Valet driver information, direct train reservation, Valet driver order receiving) And other functions to provide a management platform for the agent driving network to realize the efficient and safe management of data.

Key words: B / S mode, Java programming language, easy to operate

目  录

第1章 绪论 1

1.1 研究背景与意义 1

1.2 开发现状 1

1.3 本文的组织结构 1

第2章 相关技术介绍 3

2.1开发技术 3

2.2 MySQL数据库 3

2.3 MVVM模式 3

2.4 B/S结构 3

2.5 springboot框架介绍 4

2.6 Vue.js主要功能 5

第3章 系统分析 6

3.1 可行性分析 6

3.1.1 法律可行性分析 6

3.1.2 技术可行性分析 6

3.1.3 经济可行性分析 6

3.2 功能需求分析 6

3.3 非功能需求分析 8

3.4 用例分析 8

3.5 业务流程分析 10

第4章 系统设计 12

4.1 系统架构设计 12

4.2 系统功能结构 13

4.3 功能模块设计 14

4.4 数据库设计 16

4.4.1 E-R 16

4.4.2 表结构设计 17

第5章 系统实现 24

5.1 开发工具 24

5.2 注册模块 24

5.3 登录/注销模块 25

5.4 用户模块 25

5.4.1 个人资料模块 25

5.4.2 留言模块 26

5.4.3 代驾预订搜索模块 26

5.4.4 代驾车接单模块 27

5.5 管理员模块 28

5.5.1 密码修改模块 28

5.5.2 预约订单管理模块 29

5.5.3 代驾管理模块 30

5.5.4 留言管理模块 31

第6章 系统测试 33

6.1 测试概述 33

6.2 测试过程 33

6.2.1 登录测试 33

6.2.2 订单录入测试 33

6.2.3 订单更新测试 34

6.2.4 订单删除测试 34

6.3 测试结果 34

第7章 总结与展望 36

7.1 总结 36

7.2 展望 36

参考文献 37

致谢 39

  1. 绪论
    1. 研究背景与意义

改革开放以来,中国的经济飞速成长,汽车行业也不例外,中国汽车销售在2013年再创辉煌,实现两位数增长。在“2014中国汽车市场发展趋势论坛”上,业内专家估计,汽车销售将达2400万辆。人们的生活水平提高了,越来越多的人拥有了私家车,但是风险也提高了,现如今法律也更加严格,酒驾更是会直接扣除12分,吊销驾驶证。因此代驾在国内也慢慢流行起来,然而国内的代驾服务企业在管理上的混乱,使这个新兴的行业发展缓慢。为了很好的解决这个问题,一个便捷、高效、人性的代驾服务系统应运而生。

酒驾,是导致交通事故发生的重要原因。据统计,大约50%-60%的交通事故与酒驾有关,给人民的生命财产安全和社会治安稳定造成了极大的威胁。酒驾的处罚也极为严厉,酒驾-吊销驾照+禁驾+扣12分。因此代驾服务便应运而生,然而国内的代驾虽然近些年发展迅速,但是大部分的代驾公司存在着,在人员调度上,因时间、地点、业务等的冲突,造成管理的困难,阻碍了企业的发展。于是开发代驾服务系统便成了企业发展与进步的关键。代驾服务系统可以更好的管理代驾人员,为客户提供更好的服务。

    1. 开发现状

目前代驾在中国属于新兴事物,人们还在接受之中,但在国外代驾是十分普遍的现象。例如,在我们的近邻韩国,尽管汽车业发达,很多人都有下班后去酒馆喝几杯的喜好,但酒后驾驶的行为却很少。这相当程度上得益于众多“代驾业务”公司提供了便利的服务。在汽车销售点、停车场、加油站等场所,经常有“代驾公司”推销员的身影出没,“代驾公司”的名片几乎每名驾车者人手一张。一旦驾车者因为喝酒、身体不适、精神状态不佳而不能开车时,只要他们打电话到代驾公司,剩下的一切都可由代驾公司代劳。“严格的管理、规范的运作”是国外代驾市场红红火火的主要原因之一。这其中就反应着国外的代驾服务系统比国内要完善很多。

    1. 本文的组织结构

六个章节共同组成了本文研究及设计内容,包括:

第一章:绪论。本文章的开头部分,对本题目的研究背景和研究意义等一些做文字性的描述。

第二章:相关技术介绍。主要介绍Java编程技术、JSP嵌入式脚本语言、B/S模式等。

第三章:系统分析。包括系统总体需求描述、功能性角度分析系统需求、非功能性等各个方面分析系统是否可以实现。

第四章:系统设计。本文章的重要部分,提供了系统架构的详细设计和一些主要功能模块的设计说明。

第五章:系统实现。将本系统分为前提的开发工具介绍和后期的功能代码实现。

第六章:系统测试。系统完成后,根据各个模块的测试用例才对各个模块进行功能测试。

  1. 相关技术介绍
    1. 开发技术

本系统前端框架采用了比较流行的渐进式JavaScript框架Vue.js。使用Vue-Router和Vuex实现动态路由和全局状态管理,Ajax实现前后端通信,Element UI组件库使页面快速成型。后端部分:采用springboot作为开发框架,同时集成MyBatis、Redis等相关技术。

    1. MySQL数据库

MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),关系数据库将数据保存在不同的表中,提高了灵活性,它使用最常用的结构化查询语言(SQL)进行数据库管理。MySQL因其具有速度快、体积小、总体拥有成本低和开放源码的优点而备受关注。特点:

(1)支持多种操作系统。

(2)为多种编程语言提供了API。

(3)支持多线程,充分利用CPU资源。

(4)MySQL性能卓越、服务稳定,很少出现异常宕机。

(5)原生JSON支持。

(6)优化SQL查询算法,有效地提高查询速度。

    1. MVVM模式

MVVM是Model-View-ViewModel的简写。它本质上就是MVC 的改进版。MVVM 就是将其中的View 的状态和行为抽象化,让我们将视图 UI 和业务逻辑分开。当然这些事 ViewModel 已经帮我们做了,它可以取出 Model 的数据同时帮忙处理 View 中由于需要展示内容而涉及的业务逻辑。微软的WPF带来了新的技术体验,如Silverlight、音频视频3D动画……,这导致了软件UI层更加细节化、可定制化。同时,在技术层面,WPF也带来了 诸如Binding、Dependency Property、Routed Events、Command、DataTemplate、ControlTemplate等新特性。MVVM(Model-View-ViewModel)框架的由来便是MVP(Model-View-Presenter)模式与WPF结合的应用方式时发展演变过来的一种新型架构框架。它立足于原有MVP框架并且把WPF的新特性糅合进去,以应对客户日益复杂的需求变化。

    1.  B/S结构

B/S(Browser/Server)比前身架构更为省事的架构。它借助Web server完成数据的传递交流。只需要下载浏览器作为客户端,那么工作就达到“瘦身”效果, 不需要考虑不停装软件的问题。

    1. spring boot框架介绍

Spring框架是Java平台上的一种开源应用框架,提供具有控制反转特性的容器。尽管Spring框架自身对编程模型没有限制,但其在Java应用中的频繁使用让它备受青睐,以至于后来让它作为EJB(EnterpriseJavaBeans)模型的补充,甚至是替补。Spring框架为开发提供了一系列的解决方案,比如利用控制反转的核心特性,并通过依赖注入实现控制反转来实现管理对象生命周期容器化,利用面向切面编程进行声明式的事务管理,整合多种持久化技术管理数据访问,提供大量优秀的Web框架方便开发等等。Spring框架具有控制反转(IOC)特性,IOC旨在方便项目维护和测试,它提供了一种通过Java的反射机制对Java对象进行统一的配置和管理的方法。Spring框架利用容器管理对象的生命周期,容器可以通过扫描XML文件或类上特定Java注解来配置对象,开发者可以通过依赖查找或依赖注入来获得对象。Spring框架具有面向切面编程(AOP)框架,SpringAOP框架基于代理模式,同时运行时可配置;AOP框架主要针对模块之间的交叉关注点进行模块化。Spring框架的AOP框架仅提供基本的AOP特性,虽无法与AspectJ框架相比,但通过与AspectJ的集成,也可以满足基本需求。Spring框架下的事务管理、远程访问等功能均可以通过使用SpringAOP技术实现。Spring的事务管理框架为Java平台带来了一种抽象机制,使本地和全局事务以及嵌套事务能够与保存点一起工作,并且几乎可以在Java平台的任何环境中工作。Spring集成多种事务模板,系统可以通过事务模板、XML或Java注解进行事务配置,并且事务框架集成了消息传递和缓存等功能。Spring的数据访问框架解决了开发人员在应用程序中使用数据库时遇到的常见困难。它不仅对Java:JDBC、iBATS/MyBATIs、Hibernate、Java数据对象(JDO)、ApacheOJB和ApacheCayne等所有流行的数据访问框架中提供支持,同时还可以与Spring的事务管理一起使用,为数据访问提供了灵活的抽象。Spring框架最初是没有打算构建一个自己的WebMVC框架,其开发人员在开发过程中认为现有的StrutsWeb框架的呈现层和请求处理层之间以及请求处理层和模型之间的分离不够,于是创建了SpringMVC。

    1.   Vue.js 主要功能

Vue.js是一套构建用户界面的渐进式框架。与其他重量级框架不同的是,Vue采用自底向上增量开发的设计。Vue 的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整合。另一方面,Vue 完全有能力驱动采用单文件组件和Vue生态系统支持的库开发的复杂单页应用。

Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。

Vue.js 自身不是一个全能框架——它只聚焦于视图层。因此它非常容易学习,非常容易与其它库或已有项目整合。另一方面,在与相关工具和支持库一起使用时,Vue.js 也能驱动复杂的单页应用。

  1. 系统分析
    1. 可行性分析
      1. 法律可行性分析

开发软件有没有触犯法律,这涉及到软件或者系统能不能发布的问题。如果触犯了法律,就必将会受到法律的制裁。常见法律问题就是软件抄袭问题,若是抄袭别人软件,将会受到严厉惩罚。

      1. 技术可行性分析

软件产业经过多年的发展,现在已经达到了很大的规模,从事软件开发的专业人员不计其数,软件产业的重要性已经上升到了影响和推动国民经济发展的核心地位。本系统基于的架构,目前技术已经非常的成熟,是不存在技术上面难以实现的麻烦。

      1. 经济可行性分析

开发软件所需的时间、人力和物力成本,开发完成后的收益如何,从投资回报的角度软件所需功能在现有经济条件能不能实现等进行深入的考虑,都符合实际的要求。所以洗衣店管理系统具有经济可行性和实用性,可以节约管理成本

    1. 功能需求分析

代驾网站主要是为了管理和控制新闻的管理情况,对用户的信息和订单首页、站点管理(轮播图、公告栏)用户管理(管理员、用户、代驾员)内容管理(论坛列表、论坛分类列表、新闻列表、新闻分类列表)更多管理(车辆信息、直达车接单、代驾车信息、直达车信息、直达车预订、代驾预订、代驾车接单)提供了方便的机制。本系统有多类使用者,分别是管理员、和普通用户、代驾。以下是从这三种用户的角度分别介绍本系统所要实现的功能。

普通用户:

注册:首先检查用户名和邮箱是否存在,如果都不存在才能进行注册,并将用户输入的密码进行MD5加密,注册成功后提示注册成功,并将用户信息保存到数据库中。

登录:使用系统前提是需要登录账号。

留言:进入留言界面,发表个人的留言信息以及回复已存在的留言信息,更新后,其他用户可以查看回复的留言。

资讯搜索和浏览:资讯展示功能模块主要包括资讯搜索、查看资讯详情功能。未注册用户(游客)和已注册用户均可以在首页进行资讯搜索及查看资讯详情。

预约订单搜索和浏览:预约订单展示功能模块主要包括预约订单搜索、查看预约订单详情功能。未注册用户(游客)和已注册用户均可以在首页进行预约订单搜索及查看预约订单详情。具体功能需求如下:(1)预约订单搜索:前台用户可以在前台输入关键词进行搜索,搜索成功后返回该预约订单的动态排序列表,且能够进行分页展示。(2)查看预约订单详情:用户可点击对应预约订单,从而查看该预约订单的预约订单详情。

预约订单接单:预约订单已存在的前提下,提供代驾对预约订单的接单功能,代驾对预约订单接单成功后,可以查看到个人已有的预约订单接单列表。

订单评价提交:代驾提交个人订单评价,提交成功后,可以查看到个人已提交的订单评价记录,代驾在个人订单内可以看到代驾的回复。

管理员:

用户管理:(1)新增用户,用于创建新用户。管理员在页面上选择"新增用户",输入用户所需的信息后保存。(2)查找用户信息,可根据条件查找用户。管理员第一次点击"用户列表"时,默认用户列表显示出全部的用户,可以根据用户姓名和出生年月进行模糊搜索,系统将查询到的用户显示到用户列表。如果不加限制、直接点击搜索按钮,则查询出全部的用户。(3)删除用户,用于删除已有用户。在用户列表显示出用户后,选择用户进行删除。在确定删除之后,该条记录将从数据库中删除,并提示删除成功,确认后列表会重新刷新。(4)修改用户信息,在用户列表显示出用户后,选择用户进行编辑。表单将出现已有用户信息,用户可以对已有信息进行确认更改。更改完成后选择确认,列表会重新刷新。

代驾管理:

(1)新增代驾;

(2)删除代驾;

(3)更新代驾;

资讯数据管理:

(1) 图片上传:给资讯添加资讯图片。

(2) 增加资讯;

(3) 更新资讯:更新资讯的信息,如资讯标题、内容等。

(4) 资讯数据删除销毁;

接单记录管理:

(1)按接单记录编号查询接单记录:

(2)查看接单记录详情:

    1. 非功能需求分析

系统非功能需求有非常多,比如性能需求、可承载最大用户数、稳定性、易用性需求等。本系统分析时考虑到易用性需求,因为系统是给人使用的,所以必须充分从用户的角度出发,考虑用户体验,使系统易理解易上手易操作。

    1. 用例分析

1.普通用户主要使用系统的代驾车预约订单发布业务,下图所示为普通用户的用例图。

图3-1 普通用户用例图

2.代驾主要使用系统的代驾车预约订单接单业务,下图所示为代驾用户的用例图。

图3-1 代驾用户用例图

3.管理员主要负责订单评价管理、代驾管理、订单管理、预约管理、新闻管理,下图所示描述管理员的用例图。

图3-2 管理员用例图

    1. 业务流程分析

系统业务流程图如下所示。

图3-3 系统业务流程图

首先系统使用用户分2种,使用接单功能的为普通用户,使用管理功能的为管理员用户,普通用户注册成功后得到账号和密码,在登录页输入账号密码后登录到系统,代驾用户便可以浏览到系统展示的预约订单,然后进行预约订单接单,接着形成个人预约订单接单记录;管理员用户对系统的数据进行维护,包括预约订单信息的维护,对预约订单的属性及数据等进行更新和编辑,对客户的预约订单接单记录进行确认和维护等。

  1. 系统设计
    1. 系统架构设计

本系统采用MVC结构,结构包括了View、Controller、Service、ServiceImpl、Dao等模块。系统架构图如下图所示。

图4-1系统架构图

根据本系统需求分析,应为系统搭建多个包,分别为Controller、Service、ServiceImpl、Dao、Entity、Util。

现对上述的包进行简要的功能阐述,Controller层负责接收前台传来的请求并对取到的数据进行封装。Service层主要负责处理业务逻辑。Dao层负责数据库方面的交互。Entity包放置实体类,对应数据库里面一张张的表。Util包放置工具类,比如以json数据的格式返回前台的JSONUtil类,自动生成id的GenerateID类等。通过applicationContext.xml,applicationContext-dataSource.xml,web.xml这三个配置文件来搭建本系统。

首先配置applicationContext.xml,主要是自动扫描控制器,视图模式,注解的启动。

applicationContext.xml是springMVC的一些相关。

    1. 系统功能结构

为了将系统从“做什么”落实到“怎么做”,基于系统设计原则,对系统功能进行更适合编码实现的功能划分。根据上图的系统架构设计,整理出规范的系统功能结构图,为系统的实现编码做好准备。

如下图所示为系统功能结构图。

图4-2系统功能结构图

    1. 功能模块设计

用户管理针对所有用户和管理员。未注册用户点击注册,进入注册页面填写新用户信息,得到自定义生成账号后,注册完成。未注册用户注册的活动图如下图所示。

图4-3未注册用户注册活动图

用户可进行登录使用更多功能,首先进入用户登录界面,输入用户账号和密码,后台对账号和密码信息进行核对验证,验证成功则页面直接显示登录用户昵称代表登录成功,否则返回用户登录界面。用户登录活动图如下图。

图4-4用户登录活动图

用户登录后,进入功能页面,可对自己的信息进行管理,包括个人信息,订单评价管理、代驾管理、订单管理、预约管理、新闻管理。用户使用功能活动图如下图所示。

图4-5用户使用功能活动图

用户功能界面可对自己的密码进行修改。进入修改密码界面后核对当前密码,核对成功后填写新密码。如下图所示。

图4-6修改密码活动图

    1. 数据库设计

代驾网站采用的数据库是Mysql,该部分将根据系统需求和设计,设计合理的数据库。本系统考虑到之后系统的扩展集群,数据库将不使用外键。此外,不用外键时数据管理也较为简单,操作更加方便,性能更高。

      1. E-R图

E-R图,更加直观的告诉开发人员系统的各个数据的属性,各个数据之间的联系,各个数据的类型。能通过该模型更直观地了解数据库的设计,并根据对其逐渐改善。

本系统图设计,如下图所示。

图4-7系统E-R图

      1. 表结构设计

本系统根据第三范式的思想设计数据库,减少最大程度的冗余,总共建立有多个表,

表结构如下所示。  

direct_train_receipt

字段名称

类型

长度

不是null

主键

字段说明

备注

direct_train_receipt_id

int

11

主键

直达车接单ID

booking_time

datetime

0

预订时间

route_starting_point

varchar

64

路线起点

route_end

varchar

64

路线终点

subscriber_mobile_phone

varchar

16

预订人手机

receiver

int

11

接单人

order_receiving_price

int

11

接单价格

remarks

varchar

64

备注

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

driving_reservation

字段名称

类型

长度

不是null

主键

字段说明

备注

driving_reservation_id

int

11

主键

代驾预订ID

booking_time

datetime

0

预订时间

route_starting_point

varchar

64

路线起点

route_end

varchar

64

路线终点

booker

int

11

预订人

name_of_subscriber

varchar

64

预订人姓名

remarks

text

0

备注

pay_state

varchar

16

支付状态

未支付'

pay_type

varchar

16

支付类型: 微信、支付宝、网银

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

ordinary_users

字段名称

类型

长度

不是null

主键

字段说明

备注

ordinary_users_id

int

11

主键

普通用户ID

user_number

varchar

64

用户编号

gender

varchar

64

性别

full_name

varchar

64

姓名

registration_time

date

0

注册时间

examine_state

varchar

16

审核状态

已通过'

recommend

int

11

智能推荐

user_id

int

11

用户ID

create_time

datetime

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

pick_up_the_order_on_behalf_of_the_driver

字段名称

类型

长度

不是null

主键

字段说明

备注

pick_up_the_order_on_behalf_of_the_driver_id

int

11

主键

代驾车接单ID

booking_time

datetime

0

预订时间

route_starting_point

varchar

64

路线起点

route_end

varchar

64

路线终点

subscriber_mobile_phone

varchar

16

预订人手机

receiver

int

11

接单人

order_receiving_price

int

11

接单价格

remarks

text

0

备注

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

substitute_driver

字段名称

类型

长度

不是null

主键

字段说明

备注

substitute_driver_id

int

11

主键

代驾员ID

job_number

varchar

64

工号

gender

varchar

64

性别

full_name

varchar

64

姓名

registration_time

date

0

注册时间

examine_state

varchar

16

审核状态

已通过'

recommend

int

11

智能推荐

user_id

int

11

用户ID

create_time

datetime

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

through_train_information

字段名称

类型

长度

不是null

主键

字段说明

备注

through_train_information_id

int

11

主键

直达车信息ID

vehicle_number

varchar

64

车辆号码

vehicle_color

varchar

64

车辆颜色

vehicle_brand

varchar

64

车辆品牌

owner

int

11

所属人

vehicle_status

varchar

64

车辆状态

vehicle_photos

varchar

255

车辆照片

remarks

text

0

备注

hits

int

11

点击数

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

through_train_reservation

字段名称

类型

长度

不是null

主键

字段说明

备注

through_train_reservation_id

int

11

主键

直达车预订ID

booking_time

datetime

0

预订时间

route_starting_point

varchar

64

路线起点

route_end

varchar

64

路线终点

booker

int

11

预订人

name_of_subscriber

varchar

64

预订人姓名

remarks

varchar

64

备注

pay_state

varchar

16

支付状态

pay_type

varchar

16

支付类型: 微信、支付宝、网银

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

valet_driving_information

字段名称

类型

长度

不是null

主键

字段说明

备注

valet_driving_information_id

int

11

主键

代驾车信息ID

vehicle_number

varchar

64

车辆号码

vehicle_color

varchar

64

车辆颜色

vehicle_brand

varchar

64

车辆品牌

owner

int

11

所属人

vehicle_photos

varchar

255

车辆照片

remarks

text

0

备注

hits

int

11

点击数

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

vehicle_information

字段名称

类型

长度

不是null

主键

字段说明

备注

vehicle_information_id

int

11

主键

车辆信息ID

license_plate

varchar

64

车牌号码

vehicle_brand

varchar

64

车辆品牌

vehicle_color

varchar

64

车辆颜色

affiliated_company

varchar

64

所属公司

vehicle_number

varchar

64

车辆编号

owner

int

11

所属人

remarks

text

0

备注

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

  1. 系统实现
    1. 开发工具

系统中应用的开发工具总结如下表所示。

表5-1开发工具

名称

工具

版本

操作系统

IDE(Integrated Development Environment)

windows

Myeclipse

7/8/10

2017

服务器

Tomcat

9.10.7

JDK(Java Development Kit)

JDK

Java SE 8.0 (1.8.0)

数据库

浏览器

界面工具

Mysql

谷歌

Photoshop

2008

6.0

2016

    1. 注册模块

未注册用户在用户注册界面uerRegister.jsp,输入新用户信息,点击注册后,新用户信息由界面传入控制层userAction,调用addUser(user)方法,通过userDAOImp向数据库用户表插入用户信息,由于用户账号是自动生成的,若成功则反馈注册成功,并提示新用户的用户账号;若失败则回到登录界面,并显示登录失败。

注册界面如下所示。

图5-2注册界面

    1. 登录/注销模块

用户在首页点击登录,进入用户登录界面uerLogin.jsp,输入用户账号和密码,点击登录,用户账号和密码信息由界面传入控制层userAction,调用userLogin(user)方法,通过userDAOImp向数据库用户表搜索该用户账号与密码,将最终结果反馈到前端。若成功则回到首页;用户成功登录,若失败则回到登录界面,并显示登录失败。

用户点击注销,清空浏览器session值,然后返回登录页或者首页。

登录界面如下所示。

图5-3登录界面

    1. 用户模块
      1. 个人资料模块

登录用户在首页点击进入用户中心userCenter.jsp,再点击修改个人信息按钮进入userChangeInfo.jsp界面,系统根据session中存储的目前登录的用户的账号,向控制层userAction发送请求,搜索当前用户信息,userAction向userDAOImp调用queryByUserId(user),向数据库的用户表搜索当前用户信息并将用户信息以对象的形式层层返回到userChangeInfo.jsp界面,显示出当前用户的个人信息。

若用户要对个人信息进行修改,则通过修改当前信息之后点击确认,向控制层userAction发送更改后的用户信息,调用changeUser(user)方法,通过userDAOImp向数据库用户表更新用户信息,若成功则反馈注册成功,则返回的userChangeInfo.jsp界面被更改成功;若失败则显示修改失败。

      1. 留言模块

用户可以发表自己的留言。将页面session中的用户账号userId和发表留言文字框内容传入控制层LiuyanAction,调用addLiuyan方法,通过LiuyanDAOImp向数据库留言表插入,将结果返回lyb.jsp界面。

留言发表界面如下所示。

图5-4留言发表界面

      1. 代驾预订搜索模块

用户可以在首页进行代驾预订搜索,在搜索框输入关键词后,前台发起请求,将传递的keyword参数信息从前台传递DingdanController类里,匹配到list()方法,list()方法调用DingdanServiceImpl类的getDingdanByKeywordCategory()方法,如果没有该关键词,则返回空的结果集。

代驾预订搜索界面如下。

图5-5代驾预订搜索界面

      1. 代驾车接单模块

用户在登录状态下浏览代驾车订单时可将该预约订单加入预约订单接单记录,从session中取出该用户的信息,点击加入预约订单接单记录后前台发起请求,将对应的预约订单数量shuliang、id参数信息从前台传递JiedanController类里,匹配到add()方法,add()方法调用JiedanServiceImpl类的add()方法。

预约订单接单界面如下所示。

图5-6代驾单接单界面

    1. 管理员模块
      1. 密码修改模块

管理员选择个人中心的修改本人密码。通过密码框输入现密码和2次新密码,如果现密码错误,则提示修改失败。如果2次新密码不一致,则提示修改失败。都没问题的话,系统提示修改成功,并返回登录界面。

密码修改界面如下所示。

图5-7密码修改界面

      1. 代驾预订管理模块

管理员在后台管理界面点击到所有预约订单界面dingdanxinxi_list.jsp,向控制层dingdanxinxiAction发送请求,搜索当前所有预约订单信息,dingdanxinxiAction向dingdanxinxiDAOImp调用搜索全部预约订单的请求,向数据库的预约订单表搜索当前所有预约订单并将预约订单信息以对象的形式层层返回到dingdanxinxi_list.jsp界面,显示出当前所有预约订单信息。若要对预约订单信息进行修改和删除,则分别进入dingdanxinxi_updt.jsp或dingdanxinxi_delete.jsp,通过dingdanxinxiAction向dingdanxinxiDAOImp调用对应的修改或删除方法,向数据库的预约订单表做相应的持久层操作。

代驾预订管理界面如下所示。

图5-8预约订单管理界面

      1. 代驾管理模块

管理员在后台管理界面点击到所有代驾界面sijixinxi_list.jsp,向控制层sijixinxiAction发送请求,搜索当前所有代驾信息,sijixinxiAction向sijixinxiDAOImp调用搜索全部代驾的请求,向数据库的代驾表搜索当前所有代驾并将代驾信息以对象的形式层层返回到sijixinxi_list.jsp界面,显示出当前所有代驾信息。

代驾管理界面如下所示。

图5-9代驾管理界面

      1. 留言管理模块

管理员在后台管理界面点击到所有留言界面liuyan_list.jsp,向控制层liuyanAction发送请求,搜索当前所有留言信息,liuyanAction向liuyanDAOImp调用搜索全部留言的请求,向数据库的留言表搜索当前所有留言并将留言信息以对象的形式层层返回到liuyan_list.jsp界面,显示出当前所有留言信息。

留言管理界面如下。

图5-10留言管理界面

代驾车信息界面如下:

图5-11代驾车信息界面

  1. 系统测试
    1. 测试概述

软件测试是软件开发完成后必须经过的一道程序,它在软件开发过程中地位十分重要,需要由专业的测试工程师来对软件进行各方面的测试,大到功能模块测试,小到代码的单元测试,这对测试工程师来说需要有足够的耐心和专业的测试方案,软件测试归根结底就是对软件的结构和功能的综合测评,需要做到结构稳定和功能正确,二者兼顾。软件测试也叫寻找系统bug的过程,世界上没有完美无缺、不存在bug的软件,只能将软件的bug降到最低最小,来追求极致。

    1. 测试过程
      1. 登录测试

登录测试是系统最开始就要进行,测试用户能否登录,才能完成后续的功能操作。

登录测试用例表如下所示。

表6-1登录测试

用例编号

YL001

程序版本

1.00

功能名称

使用者登录测试

编制人

李铁蛋

功能描述

根据用户的登录情况测试

用例目的

测试用户登录情况是否正确

测试项

测试数据

测试结果

预期结果

用户名

为空

请输入用户名

请输入用户名

密码

为空

请输入密码

请输入密码

用户密码组合

用户名:klouse 密码 klouses

用户与密码不匹配

用户与密码不匹配

用户密码组合

用户名 : klouse 密码

klouse

进入系统

正确的用户名和密码

登录系统

      1. 订单录入测试

用户在发布订单页面,通过按照预先格式发布订单,如果因为输入时候缺少相关内容,就不能发布成功,且有相应错误提示

订单录入发布测试用例表如下所示。

表6-1订单录入发布测试

用例编号

YL002

程序版本

1.00

功能名称

订单发布测试

编制人

李铁蛋

功能描述

对使用者发布或者录入订单进行测试,判断其功能是否达到预期的要求

用例目的

对系统使用者录入发布订单进行原型测试。

测试项

测试数据

测试结果

预期结果

属性1

为空

请输入属性1对应的数据

请输入属性1对应的数据

属性2

为空

请输入属性2对应的数据

请输入属性2对应的数据

属性3

为空

请输入属性3对应的数据

请输入属性3对应的数据

全部输入

数据均填入

录入发布成功

录入发布成功

      1. 订单更新测试

管理员在更新订单页面,通过按照预先格式更新订单,如果因为输入时候缺少相关内容或者更新的数据不符合当前规范的话,就不能更新成功,且有相应错误提示

订单更新测试用例表如下所示。

表6-1订单更新测试

用例编号

YL003

程序版本

1.00

功能名称

订单更新测试

编制人

李铁蛋

功能描述

对使用者更新订单进行测试,判断其功能是否达到预期的要求

用例目的

对系统使用者更新订单进行原型测试。

测试项

测试数据

测试结果

预期结果

属性1

编号:321

编号更新成功

编号更新成功

属性2

名称:名称1

名称更新成功

名称更新成功

属性3

内容:内容1234内容

内容更新成功

内容更新成功

全部输入

数据均未更改

更新成功

更新成功

      1. 订单删除测试

管理员在订单页面,通过点击数据删除按钮来删除该条数据,如果该数据和其他数据有关联,则提示是否确定删除。

订单删除测试用例表如下所示。

表6-1订单删除测试

用例编号

YL004

程序版本

1.00

功能名称

订单删除测试

编制人

李铁蛋

功能描述

对使用者删除订单进行测试,判断其功能是否达到预期的要求

用例目的

对系统使用者删除订单进行原型测试。

测试项

测试数据

测试结果

预期结果

数据1

无任何关联的数据1

数据删除成功

数据删除成功

数据2

和其他数据有关联的数据2

请确认是否删除

请确认是否删除

    1. 测试结果

在经过之前的所有的工作之后,通过对软件的测试方法、测试原则还有典型的测试用例进行全面的、深入的介绍。经过对系统的全面测试,系统目前所具有的所有功能均成功的实现并且通过了测试,整个系统实现了基于 Java 开发的期望。

  1. 总结与展望
    1. 总结

代驾网站采用MVVM结构,该结构非常完美的集优点于一身,成熟、强大、易理解易使用,通过使用这个结构,降低了开发的难度。本系统实现了基于Java的代驾网站,将数据操作维护的过程转化成电脑操作流程,具体实现了对系统人员管理、留言功能、预约订单数据维护、接单数据维护、代驾数据维护,并提供查询统计功能来对预约订单和接单的相关数据进行统计分析,让使用者能更清晰的掌握运营情况,帮助使用者进行数据操作维护,简化工作流程,提高工作效率和盈利。

    1. 展望

目前完成的代驾网站,还有许多有待改进的地方。一个是功能上的改进,用户理应可以修改自己的相关信息,故应增设个人中心功能;另外,系统如果能提供更多的功能就会使得系统更加丰富和多样化,比如数据当前分析和未来预测等。第二个是技术上的改进,由于对开发框架不太熟悉,权限管理这部分,本系统采用一个jsp页面来规定好导航栏,即跳转的页面,这相对比较不灵活,如果将URL路径记录到数据库并实现增删查改会比较好;另外就是对EasyUI的使用还不够熟练,视觉效果和界面观感有待提升,希望日后能对这个系统有所改进。

参考文献

[1]刘亚茹,张军.Vue.js框架在网站前端开发中的研究[J].电脑编程技巧与维护,2022(01):18-19+39.DOI:10.16184/j.cnki.comprg.2022.01.009.

[2]罗斌,温丰蔚,曾晓钰,张亮,韦通明.基于Vue.js的培训可视化系统开发与设计[J].现代工业经济和信息化,2021,11(12):54-56.DOI:10.16525/j.cnki.14-1362/n.2021.12.020.

[3]董玉霞,苏荣聪.基于静态分析的Java语言程序漏洞检测方法研究[J].成都工业学院学报,2021,24(04):40-44.DOI:10.13542/j.cnki.51-1747/tn.2021.04.007.

[4]李弟文.应用Vue的百倍课堂Web端系统设计与实现[J].福建电脑,2021,37(12):75-81.DOI:10.16707/j.cnki.fjpc.2021.12.017.

[5]郑玉娟,张亚东.基于Vue.js的微商城前端设计与实现[J].信息技术与信息化,2021(11):101-103.

[6]陈玥.基于Java语言开发的宿舍管理系统[J].信息与电脑(理论版),2021,33(21):38-40.

[7]单树倩,任佳勋.基于SpringBoot和Vue框架的数据库原理网站设计与实现[J].电脑知识与技术,2021,17(30):40-41+50.DOI:10.14004/j.cnki.ckt.2021.2868.

[8]吴迪.Java编程语言在计算机软件开发中的应用[J].信息与电脑(理论版),2021,33(20):29-31.

[9]张翔.浅谈JAVA编程语言在计算机软件开发中的应用[J].电子元器件与信息技术,2021,5(10):204-205.DOI:10.19772/j.cnki.2096-4455.2021.10.095.

[10]齐善鲁,马徳俊,梁雪.基于SpringBoot的开放式软件开发案例教学平台设计[J].电脑知识与技术,2021,17(28):71-73.DOI:10.14004/j.cnki.ckt.2021.2997.

[11]曹瑞燕.Java语言在软件开发中的应用[J].信息记录材料,2021,22(10):96-97.DOI:10.16009/j.cnki.cn13-1295/tq.2021.10.045.

[12]王伟,常庆丽,吴朝霞.基于Springboot+Vue的精准帮扶系统研究与实现[J].河南科技,2021,40(27):12-14.

[13]胡开华,张玉静,陈明禄,何文鑫.基于Vue.js的Web应用开发教学案例设计与实现[J].信息与电脑(理论版),2021,33(18):91-94.

[14]陆婷婷.一种基于vue技术开发的移动选题平台[J].电脑知识与技术,2021,17(26):69-71.DOI:10.14004/j.cnki.ckt.2021.2598.

[15]杜继明.Java语言中的图像处理[J].信息记录材料,2021,22(09):124-125.DOI:10.16009/j.cnki.cn13-1295/tq.2021.09.058.

[16]关剑. KD代驾公司哈尔滨区域营销策略研究[D].哈尔滨工业大学,2021.

[17]任健.基于百度地图SDK的代驾平台LBS实时监测系统[J].信息技术与信息化,2021(05):41-43+47.

[18]Siyi Liu. Explore Java Language and Android Mobile Software Development[J]. International Journal of Frontiers in Engineering Technology,2021,3.0(2.0):

[19]于海浩,姜莉,王亮.代驾行业市场规制路径探析[J].行政事业资产与财务,2021(02):115-116.

[20]Hu Xin,Yan Chaobing. Development and application of JAVA language development test evaluation system software[J]. Journal of Computational Methods in Sciences and Engineering,2020,20(4):

致谢

在老师的教导和帮助下,本人完成了本篇论文,老师对论文的内容、格式都有非常严格的要求,在我写毕业论文的过程中,他多次给出了建议,并定期检查,对我们严格要求,帮助我们在文档的编写上写到极致和正确,他这种教学和工作态度,让我对他产生无限的敬佩感和尊敬感。写毕业论文的同时,作为应届生,我也忙着找工作中,遇到了很多选择,感到困惑迷茫的时候,老师给了我很多意见,感谢老师的耐心开导,跟她的聊天我明白了许多。

我还要感谢我的父母,一直以来都非常支持和相信我,在精神和经济上给了我很多力量,如今我将毕业走上工作之路,终于能报答父母的养育教导之恩。还有我大学期间所有老师和全体同学,遇到问题时,这些老师同学总是无私地帮助我,真的非常感谢,我也会加油努力成长为一个有用的人。

点赞+收藏+关注 → 私信领取本源代码、数据库

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
GitHub代驾源码是指在GitHub上可以找到和下载的一个用于代驾服务的源代码。代驾服务是指一种让他人代为驾驶自己的汽车的服务,常见于那些不方便或者无法开车的人群,比如醉酒人士、禁驾人员、年老体弱者等。 使用GitHub代驾源码,可以帮助开发人员快速构建一个代驾服务的平台或者应用程序。该源码可能包含了实现代驾预订、代驾司机管理、用户评价等功能的代码。使用这个源码,开发人员可以根据自己的需求进行定制和修改,以满足不同地区或者不同用户的特殊需求。 通过使用GitHub代驾源码,可以减少开发人员从零开始构建代驾服务平台的工作量和时间,提高开发效率。同时,由于GitHub是一个公开的开发者社区,使用该源码还可以获得其他开发人员的贡献和反馈,有助于代码的优化和改进。 在使用GitHub代驾源码时,需要注意根据源码提供的许可证进行合理的使用和分发,保护代码的知识产权和作者的权益。另外,在使用之前最好对源码进行安全性和稳定性的评估,以确保代驾服务平台或者应用程序的正常运行。 总之,GitHub代驾源码可以提供一个快速构建代驾服务平台的解决方案,为开发人员省去了大量重复劳动,同时也提供了其他开发人员贡献和反馈的机会。但是在使用之前需要对许可证和源码的评估进行理性分析,以确保代码的合法性和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值