毕 业 设 计
Graduation Design
题 目: 旅游管理系统的设计与实现
声明:不得侵犯作者权益,违者必究
毕业设计(论文)原创性申明
本人郑重申明:所呈交的毕业设计(论文)是本人在导师指导下独立进行的研究工作所取得的研究成果。设计(论文)中引用他人的文献、数据、图件、资料,均已在设计(论文)中特别加以标注引用,除此之外,本设计(论文)不含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究作出重要贡献的个人和集体,均已在文中以明确方式表明。本人完全意识到本申明的法律后果由本人承担。
毕业设计(论文)作者签名: 日期: 年 月 日
毕业设计(论文)版权使用授权书
本毕业设计(论文)作者完全了解学院有关保留、使用毕业设计(论文)的规定,同意学校保留并向国家有关部门或机构送交设计(论文)的复印件和电子版,允许设计(论文)被查阅和借阅。本人授权可以将本设计(论文)的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编毕业设计(论文)。
(保密的毕业设计(论文)在解密后适用本授权书)
毕业设计(论文)作者签名: 指导教师签名:
签字日期: 年 月 日 签字日期: 年 月 日
摘 要
随着近些年的互联网的快速发展,互联网对传统的生活方式产生了巨大的挑战,出现了许多新兴的行业-网上零售、旅游管理系统等。随着人们的收入增长,旅游消费趋于成为大众休闲娱乐方式。随着互联网的普及,许多旅游相关公司还在使用传统人工的方式进行管理,其管理模式的效率明显低下。
本课题旨在设计与实现一个小型的旅游管理系统。本系统基于SSM、Spring Security框架进行实现,提供商城的基本功能登录、浏览景点、对景点购买和查看订单操作,也可以支持管理者对景点、订单的管理及用户管理等。其次基于系统的实现需求对需求进行分析,明确系统的基本架构及其MySQL数据库设计等。
关键词:旅游管理系统;SSM框架;MySQL
Abstract
With the rise of the Internet in recent years, informatization has had a huge impact on traditional lifestyles, resulting in many emerging industries-online retail, travel management systems, etc. With the improvement of per capita income, tourism consumption has become a popular way of leisure and entertainment. With the increasing popularity of the Internet, most tourism companies still use the traditional manual way of management, the efficiency of its management mode is significantly low.
This subject aims to design and implement a small tourism management system. The system is implemented based on SSM, Spring Security, providing the basic functions of the mall to log in, browse scenic spots, purchase scenic spots, and view orders. It can also support managers’ management of scenic spots, orders, and user management. Secondly, analyze the requirements based on the implementation requirements of the system, and clarify the basic structure of the system and its mysql database design, etc.
Key words: Tourism Management System;
SSM architecture;
MySQL
目 录
摘 要 1
Abstract 2
目 录 3
引 言 1
1、系统相关技术及工具介绍 2
1.1 系统相关工具介绍 2
1.2 系统相关技术介绍 2
2、系统可行性分析与需求分析 4
2.1 可行性分析 4
2.1.1 经济可行性 4
2.2 需求分析 4
2.3 业务流程分析 4
3、系统设计 5
3.1 系统流程 5
3.2 系统功能结构 7
3.3 数据库设计 7
3.3.1 E-R图 7
3.3.2 数据表的设计 10
4、系统实现 13
4.1 基础模块 13
4.1.1 用户登录 13
4.1.2 系统首页 14
4.1.3 修改密码 15
4.1.4 用户注销 15
4.2 用户管理 15
4.2.1 用户管理页面-管理员 15
4.2.2 用户添加-管理员 17
4.2.3 用户信息添加角色页面-管理员 18
4.2.4 用户信息详情-管理员 18
4.2.5 用户编辑-管理员 20
4.2.6 用户删除-管理员 20
4.3 景点管理 21
4.3.1 景点增加-管理员 21
4.3.2 景点修改-管理员 22
4.3.3 景点删除-管理员 23
4.3.4 订单管理查看-管理员 23
4.4 其它管理 25
4.4.1 角色管理-管理员 25
4.4.2 日志管理-管理员 27
4.5 用户操作 28
4.5.1 查看景点 28
4.5.2 购买门票 28
4.5.3 查看我的订单 31
4.5.4 个人信息管理页面 31
5、 系统测试 33
5.1 软件测试的目的 33
5.2 测试用例编写 33
结 论 37
参考文献 38
后 记 39
引 言
在互联网飞速发展的今天,我们生活中的许多方面也与计算机应用有着紧密联系。信息传递的速度也已经早已不像当年,现代可以有非常多的方式来获取所需要的各种信息,对于各种有需求事物的选择也更多了[1]。随之而来的问题就是旅游的发展要面临着巨大挑战,客户可以做的选择越来越多,旅游企业必须想办法来优化服务,所以旅游管理系统在这种有迫切需求的环境下营运而生并且快速发展着[2]。
在现在这个信息化普及速度如此之快和互联网快速并且蓬勃发展的阶段下,IT技术的应用已经在各个企业里面有着不可替代的地位,各种类型的旅游管理系统也应用在各种类型的企业里面用来管理企业客户关系,而具体要怎么做才可以提高旅游服务质量,这个问题是旅游业都非常关心的。目前,随着近些年来互联网的快速发展和大陆旅游业开始逐步重视起来,国内的旅游管理系统开发技术已经比较成熟,旅游管理系统在国内企业也已经进入了普及应用的阶段[3]。
旅行社要想在激烈市场的时代中保持一定的竞争力,就要应用互联网来提高自身服务水平。与采用Word,Excel等电子文档、表格等传统的方式进行旅游信息的管理相比,旅游信息管理系统的应用能使得旅游管理者实现经济效益的提升[4]。除此之外,旅游活动受到经济,自然,文化,政治,人文科学等多种因素影响,所以如何让游客在较短的时间内了解到旅游地点的相关信息也是旅行社服务的重中之重。
所以要利用当今社会快速发展的计算机技术开发一个既可以方便用户使用,又可以让旅游更好发展的系统,来帮助传统旅游企业这个难题。因此选择该课题来进行研究,去开发一个比较容易使用的旅游管理系统。
1、系统相关技术及工具介绍
1.1 系统相关工具介绍
在进行系统开发时有非常多样的开发语言,开发工具和软件环境来选择,所以选择一个合适的开发工具和软件环境对于每一个开发人员来说都是必要的,而如何选择一个更好、更有效率、更适合自己的开发工具也是需要深思熟虑的,因为是用Java来做的这个系统,所以从系统的特点和开发效率出发,选择以下几款好用的工具来构建开发环境和搭建项目,如表1-1所示:
表 1-1 系统开发相关工具介绍
工具名称及其版本号 用途
JDK 1.8 Java程序开发的工具包
IntelliJ IDEA 2017 最好的Java开发集成环境工具
apache-maven-3.5.3 项目构建和管理
Tomcat 7.0 系统运行的web应用服务器
MySQL 5.7 数据库管理系统
Navicat Premium 12 管理数据库(客户端)
Google Chrome 浏览器访问系统
1.2 系统相关技术介绍
系统整体的架构是B/S架构模式。后端业务逻辑的代码编写就是以Spring、SpringMVC、MyBatis三个框架为核心来做的,jsp作为前端页面,而页面的整体布局则是采用Bootstrap、adminLET框架,使用了Navicat Premium 12管理和释放数据库连接,前后端数据的交互则是使用了Json技术,整体系统项目的构建和管理则是使用了Maven[5]。
Spring介绍:Spring它是web开发三层架构中业务层的一个框架。也是目前Java Web开发中使用最多的框架,核心是IoC(控制反转)和AOP(面向切面编程)。它具有以下几种优点:1.方便解耦,简化开发 2.对事务的支持和对面向切面编程的支持 3.让开发人员对程序的测试变得简单 4.方便集成别的优秀框架。
SpringMVC介绍:一个以 MVC设计模型的轻量级框架,同时也是 Spring这个大家族中的一员,所以可以简单快速地把它和spring框架整合使用。属于表现层的框架,也是现在世界上最流行的MVC框架之一。它的优点如下:1.具有很明确清晰的角色划分 2.可以和Spring家族的其他框架轻松整合使用 3. 数据验证、绑定机制的功能非常强大4. 同时也支持Restful这种编程风格[8]。
MyBatis介绍:一个很好用的同时学习起来比较快的持久层框架。在内部自己把jdbc给封装好了,所以只要花时间关注如何去写SQL语句,而不需要再去关注其他连接数据库方面的繁琐操作(如驱动的加载、连接的创建、statement的创建等)。MyBatis框架的优点:1.相比其他持久层框架它本身非常小巧并且容易上手 2.把系统代码中的sql代码彻底地分离,在xml配置文件里面编写sql或者基于注解编写sql,方便开发人员维护管理 3.可以支持编写动态SQL 4.和之前写JDBC相比,编写的代码量少了好多。
JSP的简单介绍:一种在服务端运行的语言(全称JavaServer Pages)。可在网页中插入Java代码,继而实现以静态页面作为模板,可以动态生成其中的内容。JSP的优点:1.一定程度上把业务层和表现层分离了2.具有跨平台性3.简化开发。
BootStrap框架简易介绍:Bootstrap是Twitter推出的一个用于Web 应用程序和网站开发的前端框架。
Maven简易介绍:很多开发人员都在用的一个项目管理工具,可以用来快速构建Java项目和管理jar包,并且不需要手动去导入jar包。Maven的优势:1.自动下载jar包,不用自己去网上找各种jar包 2.很方便的将一个大的项目拆分成多个小工程来开发,方便编写代码和管理工程 3.解决了各个jar包之间的版本冲突和jar包之间的相互依赖。
2、系统可行性分析与需求分析
2.1 可行性分析
每一个系统开发前都是要经过技术人员层层考虑的,一般程序员开发一个软件系统是需要经过五个阶段:问题的定义及规划、需求分析、软件设计、程序编码、软件测试。而第一个问题定义及规划就要考虑该系统开发是否可行,要从整体上去考虑该系统项目的应用场景和利弊价值等,对该系统进行可行性分析[6],分析该系统的功能是否能实现,该系统是否值得去实现。
2.1.1 经济可行性
本次旅游管理系统是毕业设计项目,以及对自己这大学四年以来所学的专业知识进行一个阶段性的总结,很纯粹的目的,没有说有什么利益性的东西参入进来,所以说此次系统开发除了基本的硬件设施(一台笔记本电脑)外不需要其他开发成本,这对于软件工程专业学生来说是早就必备的东西,而且开发本系统还可以提高自己的专业技术,总结以往所学的知识,所以说是可行的。
2.2 需求分析
进行系统开发时,对系统功能需求进行分析这一步非常重要。只有明确了开发的系统将来所要面对的用户类型,不同的用户又会有怎样的需求[7],系统要达成什么目标,在确定这些之后才可以让接下来的开发过程比较顺利。旅游管理系统主要有以下这些功能:它本身是一个面向公司内部人员的管理系统,据有管理员和普通用户两种不同登录进来只可以访问权限的不同,管理员的操作即体现在其核心。
2.3 业务流程分析
这次旅游管理系统的设计与业务的实现流程是比较简单的,对于用户来说,很容易就可以上手应用;主要功能就是浏览景点,购买并下单的过程,用户在登录后就可以进入系统主页,之后可以对景点查看,购买,查看订单,查看和修改个人信息进行一些基本操作,业务不多并且比较简单。
3、系统设计
3.1 系统流程
本系统具有管理员和普通用户两种不同类型的用户;
管理员:拥有该系统全部功能权限。(如登录和退出功能,管理用户,景点,订单等等)
普通用户:具有登录和退出功能,可以查看景点信息,可以看到所属于自己的订单信息,还可以对个人信息进行查看和修改等操作;
系统的大概流程:如图3-1 管理员流程图和图3-2普通用户流程图所示:
NYNY
3.2 系统功能结构
对系统功能结构进行划分可以很好地帮助开发,本次CRM管理系统确定的系统功能结构模块如下图3-3所示:
3.3 数据库设计
数据库的设计会直接影响到系统开发的难易度,并且表与表之间的关系也比较多,如一对多,多对多的关系,表与表之间的字段也可能用了外键来关联,所以对开发人员来说,怎样去设计好数据库表也是一个非常重要的事情。以下是本系统的数据库表E-R图以及数据库表的设计。
3.3.1 E-R图
三张表分别对应了三个实体,分别表示用户与角色的关系,订单与景点的关系,订单与用户的关系,为了更好更清晰的看到数据库表的结构,有四张E-R图来展示,具体如下图3-4、图3-5、图3-6所示:
图3-4表示景点与订单的关系,一对多的关系。
n
1
图3-5表示的是用户与角色的关系,即是多对多的关系。
n
m
图3-6表示用户与订单的关系,一对多的关系
n
1
图3-7表示日志打印信息。
3.3.2 数据表的设计
用户信息表,主要含有用户的id,用户名,用户密码,邮箱,电话号码,用户状态,主要用来存储用户的个人信息,如表3-1所示。
表 3-1 用户信息表(users)
字段名称 类型 长度 主键 是否允许NULL 说明
id bigint 255 Y N 用户主键id
username varchar 50 N N 用户名
passowrd varchar 255 N N 用户密码
email varchar 50 N N 邮箱
phoneNum varchar 20 N Y 电话号码
status int 11 N N 用户状态
角色表包括角色id,角色名称,角色描述,用来存放角色信息,如表3-2所示。
表 3-2 角色表(role)
字段名称 类型 长度 主键 是否允许NULL 备注
id bigint 100 Y N 角色主键id
roleName varchar 50 N Y 角色名称
roleDesc varchar 50 N Y 角色描述
用户角色表包括用户id,角色id,即用户表和角色表的中间表,如表3-3所示。
表 3-3 用户角色表(users_role)
字段名称 类型 长度 主键 是否允许NULL 备注
userId bigint 100 N Y 用户id
RoleId bigint 100 N Y 角色id
景点表包括id,景点数目,景点名称,城市名称,出发时间,景点价格,景点描述,景点状态和景点图片,主要用来存储景点表,如表3-4所示。
表 3-4 景点表(product)
字段名称 类型 长度 主键 是否允许NULL 说明
id bigint 255 Y N 主键id
productNum varchar 50 N N 景点数目
productName varchar 50 N Y 景点名称
cityName varchar 50 N Y 城市名称
departureTime timestamp 0 N N 出发时间
productPrice float 0 N Y 景点价格
productDesc varchar 500 N Y 景点描述
productStatus int 11 N Y 景点状态
productImage varchar 255 N Y 景点图片
订单表包括id,订单数目,订单时间,人数,订单描述,支付类型,订单状态,景点id,会员id,下单用户名,用户id,主要用来存储订单表,如表3-5所示。
表 3-5 订单表(orders)
字段名称 类型 长度 主键 是否允许NULL 说明
id bigint 255 Y N 主键id
orderNum varchar 255 N Y 订单数目
orderTime timestamp 0 N Y 订单时间
peopleCount int 255 N Y 人数
orderDesc varchar 255 N Y 订单描述
payType int 10 N Y 支付类型
orderStatus int 10 N Y 订单状态
productId bigint 255 N Y 景点id
memberid bigint 255 N Y 会员id
username varchar 255 N Y 下单用户名
userId bigint 255 N Y 用户id
日志表包括id,访问时间,用户名,ip地址,url,执行时间,方法,主要用来记录管用户操作的记录,如表3-6所示:
表 3-6 日志表(syslog)
字段名称 类型 长度 主键 是否允许NULL 说明
id bigint 255 Y N 主键id
visitTime timestamp 0 N Y 访问时间
username varchar 255 N Y 用户名
ip varchar 255 N Y IP地址
url varchar 255 N Y url
executionTime bigint 255 N Y 执行时间
method varchar 255 N Y 方法
4、系统实现
本次的旅游管理系统的前端页面是使用bootstrap来设计实现的,bootstrap前端界面美观,而且对于开发一个后台管理系统且这个系统是面对公司内部人员,bootstrap极大的简化了前端的开发工作量,它强大的数据交互功能和各种好用的组件更是让开发时如鱼得水。
4.1 基础模块
4.1.1 用户登录
使用Tomcat启动项目,自动跳转到以下网址:
http://localhost:8888/project_ssm_travel_system/login.jsp
在输入正确用户名、密码时,就可以登录进去,如果当中一个错了,就要重新输入用户信息。使用Spring Security框架处理,对用户名、密码或状态不正确的登录操作进行拦截,对用户名、密码和状态正确登录操作进行放行,登录页面如下面的图4-1所示:
图 4-1 用户登录页面图
?
4.1.2 系统首页
当用户的基本登录信息码输入正确后,将会进入到系统的首页,首页界面比较简单,就是一些关于本次系统开发信息的一些文字介绍,在左边则有具体的菜单栏,但是管理员和普通用户登录后,左侧的菜单栏界面稍微有点不同,如下面的图4-2和图4-3所示:
图 4-2 系统首页图(管理员)
图 4-3 系统首页图(普通用户)
4.1.3 修改密码
用户登录后,可以自行修改密码,密码显示是加密的,修改成功会要求重新登录。如下面的图4-4所示:
图 4-4 修改密码
4.1.4 用户注销
用户登录后,可以自行注销账号,点击注销,即退出登录。如下面的图4-5所示:
图 4-5 用户注销
4.2 用户管理
4.2.1 用户管理页面-管理员
当以管理员身份登录进去后,点击左侧菜单栏用户列表选项,就会查询到全部的用户信息,并且以在右边页面展示出来,具体的页面如图4-6所示:
图 4-6 用户信息列表图?
4.2.2 用户添加-管理员
当点击用户列表后,查询到全部用户信息后,再去点上面的添加按钮,将会跳到添加用户信息的界面,添加动作成功完成后用户管理界面也会马上刷新并且把数据显示出来,页面如下面的图4-7和图4-8所示:
图 4-7 用户添加页面图
图 4-8 用户添加成功页面图
4.2.3 用户信息添加角色页面-管理员
当点击角色列表就会查询到全部角色信息,然后点添加按钮,就会跳出一个添加角色信息的窗口,已有的角色不用在添加了,可继续添加为获得的角色,具体的页面如下面的图4-9和图4-10所示:
图 4-9 用户信息添加角色页面(管理员)
图 4-10 用户信息添加角色页面(管理员)
4.2.4 用户信息详情-管理员
管理员可以查询用户详情信息,包括用户具有的角色和权限,如图4-11和图4-12所示:
图 4-11 用户信息详情(管理员)
图 4-12 用户信息详情(管理员)
4.2.5 用户编辑-管理员
管理员可以编辑用户信息,包括改变用户状态等操作,如图4-13和图4-14所示:
图 4-13 修改用户信息(管理员)
图 4-14 修改用户信息成功界面(管理员)
4.2.6 用户删除-管理员
管理员可以彻底删除用户,包括用户及具有的角色,如图4-15所示:
图 4-15 用户信息详情(管理员)
4.3 景点管理
4.3.1 景点增加-管理员
当管理员点击景点列表后,查询到全部景点信息后,点击上面的增加按钮,将会跳转增加景点信息的页面,这里截取增加的界面,具体的页面如下面的图4-16和图4-17所示:
图 4-16 景点增加(管理员)
图 4-17 景点增加成功(管理员)
4.3.2 景点修改-管理员
当管理员点击修改景点的时候,选择一条数据之后点击上面的修改按钮,将会转出修改景点信息的页面,这里截取修改的界面,并且显示修改成功的界面,具体的页面如下面的图4-18和图4-19所示:
图 4-18 景点修改界面(管理员)
图 4-19景点修改成功(管理员)
4.3.3 景点删除-管理员
当查询到全部客户信息后,就可以选择一条数据或者多条数据,之后再点击上面的删除按钮,进行删除操作。删除动作成功完成后客户信息管理界面也会马上刷新并且把数据显示出来,详细页面如图4-20所示:
图 4-20 景点信息删除页面
4.3.4 订单管理查看-管理员
当登录进去的用户点击订单管理菜单下的订单列表选项,管理员登录进去都可以看到系统中所有的订单,而有差别的是,普通用户登录进去只可以查看到自己的订单信息,不可以添加订单和看所有的订单。具体页面如下图4-21和图4-22所示:
图 4-21 全部订单信息页面(管理员)
图 4-22 分页功能查看尾页
除此之外,管理员可以查询所有订单详情,用户只能查看自己的订单详情,用户点击订单详情,可以进入订单详情页面,查询结果如图4-23所示:
图 4-23 订单详情
4.4 其它管理
4.4.1 角色管理-管理员
管理员可以对用户进行查看角色和添加角色的操作,具体的页面如下面的图4-24和图4-25所示:
图 4-24 角色显示列表
图 4-25 添加角色界面
添加成功的页面如图4-26所示:
图 4-26 角色添加成功页面
管理员对角色的管理不仅仅在于添加角色,还可以删除角色,在已有的角色基础上进行删除角色,如图4-27所示:
图 4-27 删除角色
4.4.2 日志管理-管理员
需要几个日志把所有用户在旅游管理系统的操作都记录下来,包括ip地址,延迟时间,访问用户,访问路径,从而更精准地优化后期的系统,具体的页面如下面的图4-28和图4-29所示:
图 4-28 日志打印信息
图 4-29 日志分页功能
4.5 用户操作
4.5.1 查看景点
当普通用户点击景点列表后,查询到景点信息后同时可以看到状态开放的景点和状态未开放的景点,具体的页面如下面的图4-30所示:
图 4-30 查看景点
4.5.2 购买门票
用户浏览完景点,后续业务就是对开放的景点可以购买,对未开放的景点不可以购买,购买门票,然后产生订单,图4-31点击购买门票后,进入提交订单界面,图4-32是生成订单,图4-33是查看到生成的订单:
图 4-31 购买门票
图 4-32 生成订单
图4-33 查看订单
4.5.3 查看我的订单
普通用户只能查询到自己的订单,无法查询所有的订单,如图4-34所示,可以查询订单详情,如图4-35所示:
图4-34 查询自己的订单
图4-35 查看订单详情
4.5.4 个人信息管理页面
当以普通用户身份登录进来才有这个菜单功能选项,点击个人信息列表,就可以看到自己的个人信息,但是只有用一个修改功能按钮。在点修改按钮后,跳转到修改页面进行修改,具体页面如下图4-36、图4-37和图4-38所示:
图 4-36 个人信息页面图
图 4-37 个人信息修改页面图
图 4-38 个人信息修改成功页面图
5、系统测试
5.1 软件测试的目的
软件测试是在开发过程中非常重要的步骤,对系统进行测试的目的是让开发的系统更完善,发现并解决bug,已达到预期的开发目标,更可以让用户体验更加完美。对于系统进行测试,是要确保开发的功能可以满足用户的需求,因此进行软件测试是不可或缺的。
5.2 测试用例编写
测试用例编写是为功能目标而编写的一套流程,因为本项目是一个小型并且功能简单的毕设项目,所以只要测试特定的功能是否完成即可。
基础模块主要测试用户登录、修改密码、用户注销等,如表5-1所示:
ID 测试功能项 测试步骤 所用数据 测试结果 期望结果
1 登录 用户名正确
密码错误 1、用户名:admin
2、密码:fsdfd
用户名或密码错误,界面会刷新 登录失败
用户名错误
密码错误 1、用户名:jkfdslkdfsfd
2、密码:admin
用户名或密码错误,界面会刷新 登录失败
全部正确 1、用户名:admin
2、密码:admin
成功登录进首页 成功登录进首页
表 5-1 基础模块测试用例表
续表5-1
ID 测试功能项 操作步骤 所用数据 测试结果 期望结果
2 修改密码 点击右上角修改密码,进行修改 删除原密码,重新输入密码 修改成功后跳转到登录页面,重新登录 修改成功后,输入新密码重新登录成功
3 用户注销 点击用户注销 无 登录注销 登录信息消失
用户管理模块主要测试用户管理页面查看、添加用户信息、用户添加角色、用户信息详情、用户编辑和用户删除等,如表5-2所示:
表 5-2 用户管理测试用例表
ID 测试功能项 操作步骤 所用数据 测试结果 期望结果
1 用户管理页面 点击用户管理页面 无 查询到所有用户信息 查询到所有用户信息
2 添加用户信息 点击添加按钮 输入的一些用户信息 添加信息成功,看到添加的信息 添加成功,添加信息成功显示
3 用户添加角色 点击用户添加角色按钮 选择要添加的角色 成功添加,添加后的信息成功显示 成功添加,添加后的信息成功显示
4 用户信息详情 点击用户信息详情 无 查看到用户信息详情 查看到用户信息详情
5 用户编辑 点击用户编辑按钮,进行编辑信息 输入要修改信息 修改成功后跳回用户信息显示 修改成功后显示在用户信息已修改
6 用户删除 点击用户删除按钮 无 用户删除后,该用户及含有的角色不存在 用户删除后,该信息不存在
景点管理模块主要测试景点增加、景点修改、景点删除、订单管理查看等,如表5-3所示:
表 5-3 景点管理测试用例表
ID 测试功能项 操作步骤 所用数据 测试结果 期望结果
1 景点增加 点击景点增加 输入景点的信息 查看到已添加的景点信息 查看到已添加的景点信息
2 景点修改 点击景点修改 修改相应的信息 查询到修改后的景点信息 查询到修改后的景点信息
3 景点删除 点击景点删除 无 景点删除后,该信息不存在 景点删除后,该信息不存在
4 订单管理查看 点击订单管理 无 查询到所有订单信息 查询到所有订单信息
其它管理模块主要测试角色管理、角色添加、日志管理等,如表5-4所示:
表 5-4 其它管理模块测试用例表
ID 测试功能项 操作步骤 所用数据 测试结果 期望结果
1 角色管理 点击角色管理 无 查询到角色信息 查询到角色信息
2 角色添加 在角色管理点击新建 输入要添加的角色信息,点击添加 角色添加成功后,角色管理显示记录 角色添加成功后,角色管理显示记录
3 日志管理 点击日志管理 无 查询到日志管理 查询到日志管理
用户操作模块主要测试查看景点、购买门票、查看我的订单和个人信息管理页面等,如表5-5所示:
表 5-5 用户操作模块测试用例表
ID 测试功能项 操作步骤 所用数据 测试结果 期望结果
1 查看景点 点击查看景点 无 查询到所有的景点信息 查询到所有的景点信息
续表5-1
2 购买门票 根据想要购买的景点门票,选择进行购买景点 无 点击购买进入订单界面,并成功购买 点击购买进入订单界面,并成功购买
3 查看我的订单 选择数据后点击删除按钮 无 查询到我的订单 查询到我的订单
4 个人信息管理页面 点击个人信息,在点击修改 输入修改信息 修改成功后显示在个人信息 修改成功后显示在个人信息
结 论
经过这一段时间的专业知识学习和系统开发,本次旅游管理系统的开发可以说是告一段落了,老师在任务书上写的三个功能模块:用户管理模块,景点信息管理模块和订单管理模块都成功实现了,另外在完成这三个功能模块的基础上自己也适当的在系统中加入了一些其他功能上去,如根据条件增加了日志信息等。
该项目数据库和性能方面可以去优化,比如数据库方法不建议使用多表查询,当数据在测试服的时候没有多大问题,但到部署到正式服中,数据过多,查询的效率会显著降低,甚至宕机。未来优化方法可以先把符合条件的id查询出来,封装到set集合,再查询,体现单表封装查询的思想。
该项目可以先上线,后续进行迭代开发,不断完善一些功能,根据后期新需求进行迭代开发。
参考文献
[1]Bruce Eckel. Java编程思路[J]. 计算机科学丛书,2018.04
[2]Cay S.Horstmann. Java核心技术 卷I[J]. 机械工业出版社,2016.09
[3]Leiper. Leiper’s Tourism System: A simple explanation [J]. 谷歌,2019.12
[4]廖鋆,罗小龙. 基于MVC模式的旅游管理信息系统的设计与实现[J]. 现代商贸工业,2016.03
[5]高翔,李永刚. 基于SSM框架的旅游管理系统分析与设计[J]. IT 大视野,2017
[6]张康,王春艳. 基于SSM框架的旅游信息网站的设计与实现. 电脑技术与知识[J],2018.07
[7]黄素萍,李延香. 基于SSM框架的西安旅游网站研究[J]. 无线互联科技,2018
[8]陈培龙,仁增多杰. 基于 SSM 框架旅游网站后台系统设计与实现[J]. 电脑编程技巧与维护,2018.10
【剑指微服务分布式|Java旅游管理系统的设计与实现毕业设计】后 记
推荐阅读
- Java知识点|Java的@Aspect的@Around切不到Controller导致Controller中@Autowired的Service为空
- Java|Java 两种zero-copy零拷贝技术mmap和sendfile的介绍
- springboot系列|SpringBoot 整合 Thymeleaf & 如何使用后台模板快速搭建项目
- java|SpringBoot学习(三)—————— 框架整合其他框架之三(Thymeleaf)
- SpringBoot|SpringBoot——SSMP整合案例
- 微服务的学习|微服务08_RabbitMQ的SpringAMQP基本介绍
- 微服务的学习|微服务23_服务异步通信01(RabbitMQ消息可靠性)
- 数据库|mysql查询结果去重
- Java|Java面试突击系列(五)(Redis集群模式)