政府网站建设相关文件/优化网站排名软件
摘 要
随着旅游业的迅速发展,传统的旅行信息查询管理方式,已经无法满足用户需求,因此,结合计算机技术的优势和普及,特开发了本线上旅行信息管理系统。
本论文首先对线上旅行信息管理系统进行需求分析,从系统开发环境、系统目标、设计流程、功能设计等几个方面进行系统的总体设计,开发出本线上旅行信息管理系统,主要实现了用户功能模块和管理员功能模块两大部分,用户可查看旅行相关信息,注册登录后还可实现酒店客房预订和景点购票等,同时管理员可进入系统后台对系统进行全面管理操作。通过对系统的功能进行测试,测试结果证明该系统界面友好、功能完善,有着较高的使用价值,具有庞大的潜在用户群体和较广阔的应用前景。
本线上旅行信息管理系统基于SSM框架、Java技术、MYSQL数据库开发完成,“操作简单,功能实用”这是本软件设计的核心理念,本系统力求创造最好的用户体验。
关键词:旅行信息管理,Java技术,MYSQL数据库,SSM框架
Abstract
With the rapid development of the tourism industry, traditional travel information query management methods have been unable to meet the needs of users. Therefore, combined with the advantages and popularization of computer technology, this online travel information management system has been specially developed.
This thesis first analyzes the needs of the online travel information management system, and conducts the overall design of the system from the system development environment, system goals, design process, and functional design. The development of this online travel information management system mainly realizes The user function module and the administrator function module are two parts. Users can view travel-related information. After registering and logging in, they can also book hotel rooms and purchase tickets for scenic spots. At the same time, the administrator can enter the system backend to perform comprehensive management operations on the system. By testing the functions of the system, the test results prove that the system has a friendly interface, a complete function, a high use value, a huge potential user group and a broader application prospect.
This online travel information management system is developed based on SSM framework, Java technology, and MYSQL database. “Simple operation and practical functions” is the core concept of this software design. This system strives to create the best user experience.
Key words: Travel information management, Java technology, MYSQL database, SSM framework
目 录
1 绪论 1
1.1 研究背景 1
1.2 设计原则 1
1.3 论文组织结构 2
2 系统关键技术 3
2.1JSP技术 3
2.2 JAVA技术 3
2.3 B/S结构 4
2.4 MYSQL数据库 5
3 系统分析 6
3.1 可行性分析 6
3.1.1 技术可行性 6
3.1.2 操作可行性 6
3.1.3 经济可行性 6
3.1.4 法律可行性 6
3.2系统功能分析 6
3.2.1管理员功能分析 7
3.2.2用户功能分析 7
3.3系统性能分析 8
3.4 系统流程分析 8
3.4.1开发流程 8
3.4.2登录流程 9
3.4.3添加信息流程 10
4 系统设计 11
4.1系统结构设计 11
4.2 数据库E-R图设计 11
4.3 数据库表设计 14
5 系统的实现 17
5.1 管理员功能模块的实现 17
5.1.1管理员登录界面 17
5.1.2用户管理界面 17
5.1.3景点分类管理界面 18
5.1.4景点信息管理界面 18
5.1.5酒店信息管理界面 19
5.1.6客房信息管理界面 19
5.1.7购票信息管理界面 20
5.2用户功能模块的实现 20
5.2.1系统主界面 20
5.2.2用户登录界面 21
5.2.3用户注册界面 21
5.2.4酒店详情界面 22
5.2.5酒店预订界面 23
5.2.6景点详情界面 23
5.2.7景点购票界面 24
6 系统测试 26
6.1测试定义 26
6.2测试方案 26
6.3测试方法 27
6.4测试结论 27
7 总结 28
参考文献 29
致 谢 30
1 绪论
1.1 研究背景
时代的发展,我们迎来了数字化信息时代,它正在渐渐的改变着人们的工作、学习以及娱乐方式。计算机网络,Internet扮演着越来越重要的角色,人们已经离不开网络了,大量的图片、文字、视频冲击着我们的视觉。
随着社会生产力的发展,人们的生活水平越来越高。旅游,越来越成为人们一种休闲娱乐的方式。喧嚣的都市,高强度的工作与生活,让很多人身心疲惫。而旅游,则可以调节身心、恢复疲惫和增加人们的阅历。在旅游度假区,既可以了解当地的人文情怀,又可以在碧水蓝天间忘却烦恼。所以,旅游越来越受人民的欢迎。根据联合国世界旅游组织最新发布的《世界旅游晴雨表》,2015年国际游客人数相比2014年增长了4.4%,达到11.84亿人次。随着社会和经济的发展,旅游业已成长为世界经济中发展势头最强劲和规模最大的产业之一。
因此,为了给用户提供一个便利的查看旅行信息、景点购票、酒店预订的平台,开发了本线上旅行信息管理系统。
1.2 设计原则
在开始开发项目之前,必须要先考虑项目的实用性、科学性,以及该项目是否能够真正让用户受益并尽可能的发挥项目的作用。因此,在开发前,通过以下几条原则对项目进行判断:
(1)可行性原则。项目需要保证经济可行性和技术可行性,这包括了项目在浏览端、服务端等方面上的经济和技术上是可以达成的。
(2)适应性原则。项目要保证可维护性和可扩展性,这是每个非短期项目都需要考虑的,并且不论是维护还是扩展,都必须要建立在适应用户的正常需求的基础上。
(3)安全性及保密性原则。要充分保证用户信息的安全性和保密性,不能因为开发上的疏忽,导致用户的信息泄露。
(4)系统工程原则。为了确保项目的整体性,在项目调查、项目分析、项目设计、项目开发的过程中,都需遵从项目工程的方法和步骤逐步进行。
(5)统一规划、分期实施、逐步完善原则。项目开发的过程中,要按照规划、分期实施,特别是要注意在项目开发过程中要有条理,从点到面,一步步完善,不要贪图进度,要循环渐进的对项目进行开发。
1.3 论文组织结构
本线上旅行信息管理系统在开发技术的选择上,使用JSP技术、Java编程语言开发。后台数据库使用MYSQL,存储数据。本论文的组织结构如下:
第1章绪论。阐述论文的研究背景以及设计原则。
第2章系统关键技术介绍。介绍构建线上旅行信息管理系统的相关技术。
第3章系统分析。分析线上旅行信息管理系统的需求,包括可行性分析、性能分析、功能分析以及流程分析等。
第4章系统的总体设计。根据需求分析对系统进行功能模块划分,并阐述从大模块到各个小模块的具体功能,然后依照理论知识和实践学习知识,设计数据库。
第5章系统详细设计与实现。对系统功能模块的主要功能进行界面展示。
第6章系统测试。对系统进行测试工作,发现系统bug,进行修改,确保系统正常稳定的运行。
第7章结论。总结论文的主要工作,提出进一步完善线上旅行信息管理系统的目标和明确方向。
2 系统关键技术
2.1JSP技术
JSP的全名为JAVA SERVER PAGE,是一家硅谷的公司在90年代发布的。之后,JSP被推为一种动态网页的技术标准。作为一种开发技术,它将Java的代码被其嵌入静态页面中,让网页的静态变为动态。作为一个框架,JSP在HTML网页文件插入了Java 程序片段(Scriptlet)[4],这样就可以控制数据库并且根据客户端的请求生成对应的HTML、XML及其他的网页文件给客户端。Java编程语言就是它的脚本语言,因为它的特性,我们可以建立以Java作为编程语言的安全的、能多平台执行的动态网页。
JSP是一种动态网页技术,使用java作为它的脚本语言,它为web页面的动态显示提供了更加便捷的方法,它可以减少网页的请求次数,同时可以在多平台上开发,拥有更好的兼容性[7][8]。*.jsp是JSP的文件后缀 ,它可以响应来自客户机的请求,同时动态生成HTML、XML或其他文档格式。是一种典型的Web网页技术标准[9]。它有着Java技术简单易用,以工作流为导向,安全可靠,不升级到平台,是以Java编写脚本的,可以在页面通过<% %>插入Java代码,方便使用。Web页面JSP在整个Java服务器应用程序HTTP中提供了与库单元的接口。
其特性可简述为以下:
(1)相比以前的技术,能有效的添加动态网页的内容;
(2)拥有和Java一样的在多平台被开发的优势,基本上不受环境的限制,也就是说不用因为平台环境的因素而对代码进行修改;
(3)由于是根据Java语言来作为脚本的,所以拥有它的相对易用性;
(4)它具有JavaBean和标签库的可被多次反复的利用的功能代码;
(5)被功能强且性能良好的工具所支持。
JSP以Java servlet作为技术基础,JSP和Java servlet相配合可完成大中型的Web应用程序的开发[8]。与Java一样,完全面向对象,主要面对了近年因特网发展的特点。由于其兼容性和安全可靠,企业间还可以通过它使用Java技术相互配合,实现分层开发。
2.2 JAVA技术
Java是一种非常常用的编程语言,在全球编程语言排行版上总是前三。在方兴未艾的计算机技术发展历程中,Java的身影无处不在,并且拥有旺盛的生命力[2]。Java的跨平台能力十分强大,只需一次编译,任何地方都可以运行。除此之外,它还拥有简单的语法和实用的类库,让编程人员可以尽可能将精力集中在问题的求解上,并且许多开源项目和科研成果都是采用它实现的。
在1995年这一年的5月份,著名的Sun Microsystems公司在程序开发设计上面郑重推出一种面向对象开发的程序设计语言——Java,最开始的时候Java是由詹姆斯.高斯林这位伟大的JAVA之父来进行主导[1],但是在后来由于各种原因,让甲骨文公司这个针对商业程序创建了oracle大型数据库的公司收购了Java。Java的平台总共算下来有3个,分别为javaME和javaSE以及javaEE这3个java平台。下面将对其进行分别介绍。
(1)在电脑桌面程序的开发上面需要选择JavaME,这个用得也比较多。
(2)企业也会根据工作以及业务需要开发各种软件,那么就会选用JavcEE这个支持企业版软件的开发的Java平台,JavcEE主攻运用在企业领域上面的web应用,JavcEE也在javaSE的基础上获得了比如jsp技术 ,Servlet技术等程序开发技术的支持[15]。
(3)现在生活中手机的普及化,也使得手机端这样的移动设备的软件的兴起,JavaME这个迷你版java平台就能运用于移动端的软件开发操作。
2.3 B/S结构
此次设计的网络结构模式B/S结构(Browser/Server)。B/S架构也称为B/S模式,是一种服务器以及浏览器架构模式[13]。B/S的工作模式都是先由浏览器请求,服务器再响应。B/S体系结构解决了异构系统中的连接难题,大大改善了系统的开放性,让系统的扩展和维护更加简单;同时,B/S体系结构操作也比较容易,界面全都为浏览器模式,容易分发数据的捕获程序。只要安装通用的浏览器(如WWW浏览器)就能通过Web服务器与数据库进行数据交互。此结构的好处之一在于由于它使用的统一的浏览器,使其可以在不同的地方且不需要用专门的软件进行操作,实现了不论你使用怎样的接入网的方式都可以对公共的数据进行调用和浏览。
相对于C/S模式,B/S模式是对C/S模式应用的扩展,B/S模式不用对不同的计算机安装不同应用程序,还有安全性的要求及对模式上手难度都比前者更好。B/S模式可以让客户机的压力大大减轻,工作的负荷被合理的分配了。其B/S架构图如下图所示:
图2-1 B/S模式架构图
2.4 MYSQL数据库
MySQL是典型的关系数据库系统,拥有开源免费、稳定、高效等特点,一直是中小型web项目的最佳数据库选择。MySQL作为当今IT领域使用人数最多的开源关系型数据库软件之一,在2018年的数据库使用率排名中位居第二,仅次于目前为止最成功的商业版数据库Orcle[2]。MySQL最大的优势之一就是无偿使用,这也是它成功的关键。
MySQL支持标准化数据库查询语言SQL。MySQL是一款非常适合个人开发者或小型组织开发团体的数据库管理系统,因为它是开源并且免费的,体积小、速度快、成本低以及其最重要的一点开放源码,深受程序设计人员的喜爱,这也让它成为了许许多多中小型开发网站数据库的首选,同时提供了多种开发的连接API。MySQL将数据的存放按照记录之间的关系存放到了不同的表中,减少了数据的冗余并且提高了开发的工作效率。MySQL支持开发中需要用的大型数据库,并能处理数以万计的记录。因为MySQL是开源的软件,所以在项目的预算中的时候不用花费额外的资金,大大降低了开发的总体成本,这也是MySQL数据库在中小型企业和独立的开发者中广泛流行的原因[5]。
3 系统分析
3.1 可行性分析
可行性分析是该平台系统进行投入开发的基础第一步,必须对其进行可行性分析才能够降低不必要的需要从而使资源合理利用,更具有性价比和降低成本,同时也是系统平台的成功的未雨绸缪的一步[1]。
3.1.1 技术可行性
本系统可运用SSM框架,结构清晰明了,网页采用的是JSP进行开发,相比Html更适合。系统使用Java语言编写,JAVA语言有着庞大的用户以及学习群体。数据库采用MySQL。这些都是比较基础,使用较为广泛的技术,因此具有技术可行性。
3.1.2 操作可行性
本系统操作不复杂且比较容易上手,对于初次接触本系统的来说,不许要接受什么培训就可以操作本系统。用户不需要什么特定的软件,只需要安装大众所使用的浏览器即可进行系统的访问。本系统采用可视化窗口,面向大众,有效的避免了繁琐的操作。而且,本系统将各个功能都详细设计,各模块功能逻辑清晰,对用户非常友好。因此,本系统具有操作可行性。
3.1.3 经济可行性
本线上旅行信息管理系统在普通的PC就能够良好的运行,所以对系统的硬件要求并不是很高,现在电脑已经普及并且价钱都很便宜,即使是网吧淘汰下来的计算机也能够满足需要。所以本网站虽然功能强大,但还算是物美价廉,在经济上也是可行性的。
3.1.4 法律可行性
本线上旅行信息管理系统开发的所有技术资料都为合法,知识产权问题不会发生在开发过程中,而且没有抄袭其他相关系统,不会有侵犯版权的问题。所以在开发过程中不会涉及法律责任。
从上面几个部分的可行性分析得出,这次开发的线上旅行信息管理系统在开发上面没有什么大问题,值得开发。
3.2系统功能分析
本线上旅行信息管理系统主要分管理员和用户两大功能模块,下面将详细介绍管理员以及用户分别实现的功能。
3.2.1管理员功能分析
管理员登录后可对系统进行全面管理操作,管理员主要实现的功能模块包括个人中心、用户管理、景点分类管理、景点信息管理、购票信息管理、酒店信息管理、客房类型管理、客房信息管理、客房预订管理、退房评价管理、留言板管理以及系统管理,管理员用例图如图3-1所示。
图3-1 管理员用例图
3.2.2用户功能分析
用户可进入系统前台查看系统信息,包括首页、景点信息、酒店信息、客房信息、景点资讯以及留言反馈等,注册登录后主要功能模块包括个人中心、购票信息管理、客房预订管理、退房评价管理以及我的收藏管理,用户用例图如图3-2所示。
图3-2 用户用例图
3.3系统性能分析
达到如以下的性能需求指标,可以保证系统的安全性、可靠性、稳定性,需要:
(1)系统响应的精确性和实时性
这是本系统必要的性能。考虑到未来系统可能承受的工作量,需要能够承担得起企业级的信息处理需求。实时性是该系统的生命线,因此需采用软实时系统来进行保证。
(2)系统的开放性和系统的可扩充性
本系统是一个较为初期的一个雏形,以后势必会根据的用户需求的扩大或转变。这就要求本系统需要提供足够的开放型和可扩充性,只要符合本系统的设计准则都可以将新的模块加入。通过这样的升级、维护来完成本系统后期的生命周期。
(3)系统的易用性和易维护性
系统要求不论是熟悉或不熟悉计算机的用户都可以对系统进行有效的人机交互。因此提供给用户一个友好、漂亮的图形接口是非常重要的。这可以通过发一些纸质和实际的界面模型问卷调查来获得最佳的效果。此外,也考虑到维护本系统的操作人员,有效的手段的数据备份、管理和错误检测、恢复需要被提供给相关的人员。
(4)系统的响应速度
要求系统在任何情况下的平均响应速度达到秒级,具有软实时性,可以及时反馈信息。一是为了保证了系统的工作效率,二为了防止系统因同一时间段大量的用户进入系统而造成错误、瘫痪。
3.4 系统流程分析
3.4.1开发流程
线上旅行信息管理系统的开发也是有对应的流程,开发之前必须要进行用户功能需求的分析,最后根据功能需求进行网站设计还有数据库相关数据的设计工作,此次开发的线上旅行信息管理系统开发流程如图3-3所示。
图3-3 开发流程图
3.4.2登录流程
登录模块主要完成了用户、管理员的权限登录,登录流程图如图3-4所示
图3-4登录流程图
3.4.3添加信息流程
管理员和用户在登录成功之后,均可进行添加信息操作,添加信息流程图如图3-5所示。
图3-5添加信息流程图
4 系统设计
4.1系统结构设计
系统的设计和划分是系统的核心研究问题,以确定整体结构和功能模块。该系统的结构化设计的思想,是自顶向下的方式将系统分成若干个子系统,以及反过来的子系统分成模块,其被划分成子模块,层划分各计算机可执行模块可迄今用作一个单独的程序。
本线上旅行信息管理系统结构图如图4-1所示。
图4-1系统功能模块图
4.2 数据库E-R图设计
E-R图是一种描述显示数据类型间的关系的数据描述方法,E-R图可以完整地映射出现实模型的关系。E-R图中的三个最为重要的元素就是实体、属性、关系。E-R图即由这三点组成。
实体:E-R图中数据的实体,用矩形表示上面为实体名,下面为实体属性,实体包含主外键等关系。
属性:E-R图中的属性,是指实体的属性,实体由多条属性所构成,属性拥有自己的数据类型,数据大小。属性的优劣决定了E-R图中实体的健全性、完整性。
关系:E-R图中的关系是指实体之间的关系,用菱形来表示实体间的关系,这些菱形关系的联系上有着一对多或多对多的数据联系,这些构成了E-R图的关系,E-R图的关系紧密连接了实体,使实体间的关联性更加的显著、易懂。本线上旅行信息管理系统的E-R图如下所示:
(1)购票信息实体属性E-R图如图4-2所示:
图4-2 购票信息实体E-R图
(2)景点信息实体属性E-R图如图4-3所示:
图4-3 景点信息实体属性E-R图
(3)酒店信息实体属性E-R图如图4-4所示:
图4-4 酒店信息实体属性E-R图
(4)客房信息实体属性E-R图如图4-5所示:
图4-5 客房信息实体属性E-R图
(5)客房预订信息实体属性E-R图如图4-6所示:
图4-6 客房预订信息实体属性E-R图
(6)用户信息实体属性E-R图如图4-7所示:
图4-7 用户信息实体属性E-R图
4.3 数据库表设计
本线上旅行信息管理系统采用了MYSQL数据库管理系统,主要数据库表详细信息如下:
表4-1 goupiaoxinxi购票信息表
字段名 数据类型 是否允许空 字段含义
id bigint(20) NOT NULL 编号 addtime timestamp NULL 创建时间 dingdanbianhao varchar(200) NULL 订单编号 jingdianmingcheng varchar(200) NULL 景点名称 jingdianfenlei varchar(200) NULL 景点分类 jingdiandizhi varchar(200) NULL 景点地址 menpiaojiage
int(11) NULL 门票价格
shuliang
int(11) NULL 数量
zongjine varchar(200) NULL 总金额
goupiaoriqi date NULL 购票日期
yonghuming varchar(200) NULL 用户名
shenfenzheng varchar(200) NULL 身份证
lianxidianhua varchar(200) NULL 联系电话
sfsh varchar(200) NULL 是否审核
shhf longtext NULL 审核回复
ispay varchar(200) NULL 是否支付
表4-2 jingdianxinxi景点信息表
字段名 数据类型 是否允许空 字段含义
id bigint(20) NOT NULL 编号 addtime timestamp NULL 创建时间 jingdianmingcheng varchar(200) NULL 景点名称 jingdianfenlei varchar(200) NULL 景点分类 jingdiantupian varchar(200) NULL 景点图片 jingdiandengji varchar(200) NULL 景点等级 jingdiandizhi varchar(200) NULL 景点地址 menpiaojiage
int(11) NULL 门票价格
kaifangshijian varchar(200) NULL 开放时间
zhuyishixiang longtext NULL 注意事项
jingdianjieshao longtext NULL 景点介绍
clicktime datetime NULL 最近点击时间
clicknum` int(11) NULL 点击次数
表4-3 jiudianxinxi酒店信息表
字段名 数据类型 是否允许空 字段含义
id bigint(20) NOT NULL 编号 addtime timestamp NULL 创建时间 jiudianmingcheng varchar(200) NULL 酒店名称 tupian varchar(200) NULL 图片 xingji varchar(200) NULL 星级 jiudianleixing varchar(200) NULL 酒店类型 jiudiandizhi varchar(200) NULL 酒店地址 lianxidianhua varchar(200) NULL 联系电话
jiudianjieshao longtext NULL 酒店介绍
表4-4 kefangxinxi客房信息表
字段名 数据类型 是否允许空 字段含义
id bigint(20) NOT NULL 编号 addtime timestamp NULL 创建时间 kefangmingcheng varchar(200) NULL 客房名称 kefangleixing varchar(200) NULL 客房类型 kefangtupian varchar(200) NULL 客房图片 kefangsheshi varchar(200) NULL 客房设施 kefangjiage int(11) NULL 客房价格
kefangzhuangtai varchar(200) NULL 客房状态
kefangjieshao longtext NULL 客房介绍
jiudianmingcheng` varchar(200) NULL 酒店名称
jiudianleixing varchar(200) NULL 酒店类型
jiudiandizhi varchar(200) NULL 酒店地址
表4-5 kefangyuding客房预订信息表
字段名 数据类型 是否允许空 字段含义
id bigint(20) NOT NULL 编号 addtime timestamp NULL 创建时间 dingdanbianhao varchar(200) NULL 订单编号 kefangmingcheng varchar(200) NULL 客房名称 kefangleixing varchar(200) NULL 客房类型 kefangzhuangtai varchar(200) NULL 客房状态 jiudianmingcheng varchar(200) NULL 酒店名称 kefangjiage int(11) NULL 客房价格 yudingtianshu int(11) NULL 预订天数 zongjiage varchar(200) NULL 总价格 xiadanshijian
date NULL 下单时间
ruzhushijian datetime NULL 入住时间
yonghuming varchar(200) NULL 用户名
lianxidianhua varchar(200) NULL 联系电话
shenfenzheng varchar(200) NULL 身份证
sfsh varchar(200) NULL 是否审核
shhf longtext NULL 审核回复 ispay
varchar(200) NULL 是否支付
表4-6 users用户信息表
字段名 数据类型 是否允许空 字段含义
Id bigint(20) NOT NULL 编号
username varchar(100) NULL 用户名
password varchar(100) NULL 密码 role
varchar(100) NULL 角色
addtime timestamp NULL 新增时间
5 系统的实现
5.1 管理员功能模块的实现
5.1.1管理员登录界面
管理员要想进入系统后台对系统进行管理操作,必须登录系统后台,管理员登录界面展示如图5-1所示。
图5-1 管理员登录界面
5.1.2用户管理界面
管理员可增删改查用户信息,用户管理界面展示如图5-2所示。
图5-2 用户管理界面
5.1.3景点分类管理界面
管理员能够查看、添加、修改和删除景点分类信息,景点分类管理界面展示如图5-3所示。
图5-3 景点分类管理界面
5.1.4景点信息管理界面
管理员可以增删改查景点信息,景点信息管理界面展示如图5-4所示。
图5-4 景点信息管理界面
5.1.5酒店信息管理界面
管理员可增删改查酒店信息,酒店信息管理界面展示如图5-5所示。
图5-5 酒店信息管理界面
5.1.6客房信息管理界面
管理员可添加、修改和删除客房信息,客房信息管理界面展示如图5-6所示。
图5-6 客服信息管理界面
5.1.7购票信息管理界面
管理员能够查看、审核、修改和删除购票信息,购票信息管理界面展示如图5-7所示。
图5-7 购票信息管理界面
5.2用户功能模块的实现
5.2.1系统主界面
用户在系统前台可查看系统信息,包括首页、景点信息、酒店信息以及客房信息等,系统主界面展示如图5-8所示。
图5-8系统主界面
5.2.2用户登录界面
用户要登录界面可输入用户名、密码,点击登录按钮进行登录系统,用户登录界面展示如图5-9所示。
图5-9 用户登录界面
5.2.3用户注册界面
没有账号的用户可进入注册界面进行注册操作,用户注册界面展示如图5-10所示。
图5-10 用户注册界面
5.2.4酒店详情界面
用户可选择酒店查看详情信息,登录后可进行预订操作,酒店详情界面展示如图5-11所示。
图5-11 酒店详情界面
5.2.5酒店预订界面
用户登录后可选择酒店进行预订操作,酒店预订界面展示如图5-12所示。
图5-12 酒店预订界面
5.2.6景点详情界面
用户可选择景点查看详情信息,登录后可进行购票操作,景点详情界面展示如图5-13所示。
图5-13 景点详情界面
5.2.7景点购票界面
用户登录后可选择景点进行购票操作,景点购票界面展示如图5-14所示。
图5-14 景点购票界面
6 系统测试
6.1测试定义
软件测试使用人工或是软件自动测试,为的是测试软件在不同的情况下和不同的操作下是否会出现预期之外的显示或数据[5]。在每个项目上市之前,都会进行软件测试。从来不会出现开发人员将开发流程结束之后就完工放假的情况,这是对软件所付出的时间金钱精力以及对开发人员自身的不负责任。
在现在的互联网行业中,测试更是成为了一种常见、关键的岗位。软件开发人员和测试在日常工作中更是交流频繁。在很多的情况下,两者的业绩和工作效率都是息息相关的。如果测试人员负责任且工作效率高的话,那么在开发途中就能发现已经出现的或者是隐藏的bug和逻辑错误[11]。那么就不至于在开发流程进行到中后期出现严重bug导致整个开发流程推倒重来的情况。测试人员就像是医生,优秀的测试人员印证了一句话“优秀的医生总是在疾病还隐藏在身体中就将疾病消灭,所以他不会治疗绝症。”
在学习软件工程这门课程的时候,其中有对与软件测试的介绍,重点是黑盒和白盒测试。在此次测试中主要使用黑盒测试的手法,测试项目是否完成了符合预期的功能。
6.2测试方案
对测试计划的把握是测试方案的重中之重。所有的技术难点应该都被包含在这个测试计划之中。而且我们要保证能与目标形成一致性,以至于能够测试出一些主要存在的错误和一些错误的漏洞。可以完美解决这些问题就只有白盒测试或者黑盒测试。
构造测试是白盒测试的另一个名字,了解与分析程序的结构以及性能功用的,从而我们可以得到最终想要的结果并且观察出是不是每一条程序都能得到。
性能测试是黑盒测试别称,程序本身的运作通过程序的进程来观察,主要是看一下程序是不是能够像我们预期的目标那样发展,看一看我们的程序最终能不能完整的得到我们最后想要的功能和储存想得到的数据,到最后看一下我们的这个程序完整性能不能达到要求。
(1)模块测试
单元测试就是模块测试,顾名思义就是测试每个模块所承担的功能是否能够实现,这个测试就是为了找出代码在实际的设计运转中某一些小的程序所出现的偏差,很好地改正这些错误,就说明我们模块测试进行很成功过。
(2)集成测试:
集成测试就是对系统的测试以及对他子系统的一些性能测试,他检查的事系统的包装程序信息。找出其中的问题。他的优势主要有以下这几点:
软件耗费较少。
可以提前发现端口的错误。
更好的地位系统中错误的位置。
从底部往上面进行的方案针对于偏下层的结构,而中间的结构就采用折中的方法。
(3)验收测试:
终于到了结尾性的工作了。就是为了给用户看一下我们的系统功能是否达到了预期的效果。我采用了性能测试也就是黑盒测试对系统进行测试。
其结果是分别是:
有一定的差异在用户的需求。
再者就是结果与之差不了多少。
到了最后了,我们发现的问题都是与用户的需求存在一定的关联。
6.3测试方法
本测试主要是系统是否能够进行服务器进行处理信息的能力,不同的用户发出不同的服务请求,系统必须能够准确的进行数据的传达,在这种情况下进行测试响应的时间、内存使用的情况和CPU占用大小等指标,系统完成设计必须保证信息的正确性,信息紊乱带来的后果是非常可怕的,所有必须要进行压力测试,通过本测试进行系统相应速度、稳定性能和处理能力进行优化。
运用黑盒子测试的测试办法,把各个不同功能的软件模板进行区分、管理。对于不同的模块独立的分装起来,在传统测试的时候要进行数据的统一测试,完成对系统的概要设计详细解读资料、需要解决的问题,及操作的详细应用说明等内容来视作测试的突破口,对测试的对象进行逐一对照检查,并针对单个的程序检测延伸至这个研发过程中单个及整个集成单元的检测中,要有规律有顺序的进行,不但可以缩短我们的工作时效,避免返工的操作,也可以对可用性负责,提高了可操作性和软件研发的实用性。通过对系统概要设计验证测试,测试系统的统一管理方式,对系统的各个功能模块以及系统的性能进行测试,验证系统的功能以及系统的性能。
6.4测试结论
经过对上述的测试结果分析,本线上旅行信息管理系统满足用户的要求和需求。所有基本功能齐全,操作简单,系统运行性能良好,是一个值得推广的大众化的旅行信息管理平台。
7 总结
毕业设计是最能体现出我们所学知识的应用情况,是对我们大学期间所学知识的应用巩固和提高的时刻。设计线上旅行信息管理系统的过程不仅仅是对我学计算机知识的一次考验,更是对我运用所学知识解决处理现实问题能力的培养和锻炼。通过这次的毕业设计让我对软件的开发有了很深的认识了解,我的编程能力也得到了很大的提升。整个系统设计下来花费了好几个月,从确定做这个题目来,就一直在图书馆里翻阅各种资料,并参考了很多别人做的系统,有了一个整体的构思后,开始付之于行动,把我所学的JSP和MYSQL又都重新学习了一遍,仔细用于实践,通过这次的毕业设计,让我对所学知识进行了一个整体联合,有了一个很大的提高,从开始的一筹莫展,不知从何下手,到进行到中间总是出错,编不下去,又到最后的渐入佳境,最终,终于完成了我的设计。从定题到研究背景到可行性分析,到功能的各个设计,到详细实现,总算设计出了一个达到预期目的系统。
本系统基于SSM框架,利用了我相对熟悉的JAVA编程语言和MYSQL数据库进行设计,中间出现了很多问题,查阅了大量的资料,最后慢慢实现了整个系统。做了整个系统下来,我感觉我的沟通能力和自学能力,解决问题的能力都有了很大的提高,这也将为我以后出社会找工作提供了宝贵的财富。使我明白,只要肯努力,肯学习,再大的困难也不是问题,世上无难受,只要肯登攀。我以后会不断的继续努力的。我知道设计的这个系统肯定还有很多没想到的地方,因为时间比较短,学习的有限,又没有实际经历实践过,所以设计出的这个系统的不足地方也比较多,希望老师们多多指导,让系统越来越完整,我会继续努力的。
参考文献
[1] 刘亚宾,精通Eclipse–JAVA技术大系,电子工业出版社,2005.
[2] 王玉英. 基于Java的MYSQL数据库访问技术[J]. 现代计算机:专业版, 2010, 19(14):63-66
[3] 张孝祥、徐明华,JAVA基础与案例开发详解, 清华大学出版社, 2009.
[4] 康牧,JSP动态网站开发实用教程,清华大学出版社,2009.
[5]张宁,吴捷,杨卓,张涛. 基于MYSQL的脑电数据库的构建[J]. 广西科学院学报 ,2006 22(4):275-278.
[6] 雷文华, 薛小文. MATLAB和Servlet在网络数据处理中的应用[J]. 电子测试, 2010, (11):81-86.
[7]张红梅,王磊.在JSP中访问数据库的方法[J].实验科学与技术,2006(08).
[8]靳其兵,李晓波.基于JSP的数据库连接技术的研究[J].计算机仿真 2007(04) .
[9] 赵钢. JSP Servlet+EJB的Web模式应用研究[J]. 电子设计工程, 2013, 21(13):47-49
[10] 肖英. 解决JSP/Servlet开发中的中文乱码问题[J]. 科技传播, 2011, (1)11-25
[11] Hsiao I H, Sosnovsky S, Brusilovsky P. Guiding students to the right questions: adaptive navigation support in an e-learning system for Java programming[J]. Journal of Computer Assisted Learning, 2010, 26(4):270-283.
[12] 甘仞初著.信息系统开发.北京.经济科学出版社.2007.
[13]苟凌怡,魏生民. MYSQL中索引的有效选取[J].计算机工程与应用,1999,35(6):70-71.
[14]张树亮, 李超.JSP+MYSQL网络应用系统开发案例精解[M].北京:清华大学出版社,2006.
[15] 王波编著.Java架构师指南[M].人民邮电出版社,2018:22-113.
[16] 郝佳编著.Spring源码深度解析[M].人民邮电出版社,2019:5-98.
[17] [美]Paul Deck著.林仪明译.Spring MVC学习指南[M].人民邮电出版社,2017:14-113.
[18] 李艳鹏[等]编著.互联网轻量级SSM框架解密[M].电子工业出版社,2019:19-98.
致 谢
已经到达了论文的最后一步,四年的大学生涯即将结束,非常荣幸成为本学校的一员,这是人生中最难忘的四年。时间就是这么快,还没有等到我们来得及慢慢品尝就已经消失了,眼前突然呈现出大一刚开学母亲送我到宿舍的画面,仿佛还是昨日,而现在我却要忙于毕业的最后一件大事。大学的四年只能用百感交集来形容,想到的时光都是回忆,感谢在整个大学四年里给过我温暖和帮助的人,感谢你们丰富了我人生中最难忘的四年。
首先,要感谢是我的老师们,非常感谢指导老师对我的毕业指导,不厌其烦的给了我很多建议和帮助,让我在这次的毕业设计中学习到了很多东西。饮水思其源,祝愿各位老师们身体健康、万事如意、家庭美满。
其次,我要感谢各位来自天南地北的同学们,感谢你们给予我的帮助,四年中给了我太多的欢笑与感动,你们的包容与关爱无法让我用言语来表达。缘分使我们相遇,时间又使我们分离,但是天下是没有不散的宴席,祝愿各位同学毕业后找到满意的工作,工作顺利,苟富贵,勿相忘。
最后,我要感谢我的父母在我求学路上的默默付出,如果没有父母当年坚持陪我学习,给我鼓励支持,就没有我的今天。毕业后我会努力工作,使自己学有所成来报答父母的养育之恩。
相关文章:

基于ssm的线上旅行信息管理系统论文
摘 要 随着旅游业的迅速发展,传统的旅行信息查询管理方式,已经无法满足用户需求,因此,结合计算机技术的优势和普及,特开发了本线上旅行信息管理系统。 本论文首先对线上旅行信息管理系统进行需求分析,从系…...

Jupyter开启远程服务器(最新版)
Jupyter Notebook 在本地进行访问时比较简单,直接在cmd命令行下输入 jupyter notebook 即可,然而notebook的作用不止于此,还可以用于远程连接服务器,这样如果你有一台服务器内存很大,但是呢你又不喜欢在linux上进行操作…...

【SpringCloud微服务实战10】DevOps自动化部署微服务项目(Jenkins+Docker+K8s)
一、什么是 DevOps DevOps 是一种重视软件开发人员(Developer)和运维人员(Operations)之间沟通与协作的文化、运动或实践,目标在于快速交付高质量的软件产品和服务。DevOps 强调自动化流程、持续集成与交付(CI/CD)、以及通过工具链、敏捷方法论和跨职能团队协作来增强软…...

DSVPN实验报告
一、分析要求 1. 配置R5为ISP,只能进行IP地址配置,所有地址均配为公有IP地址。 - 在R5上,将接口配置为公有IP地址,并确保只进行了IP地址配置。 2. R1和R5之间使用PPP的PAP认证,R5为主认证方;R2于R5之间…...

Linux:Jenkins:参数化版本回滚(6)
上几章我讲到了自动集成和部署 Linux:Jenkins全自动持续集成持续部署(4)-CSDN博客https://blog.csdn.net/w14768855/article/details/136977106 当我们觉得这个页面不行的时候,需要进行版本回滚,回滚方法我这里准备了…...

Haproxy2.8.1+Lua5.1.4部署,haproxy.cfg配置文件详解和演示
目录 一.快速安装lua和haproxy 二.配置haproxy的配置文件 三.配置haproxy的全局日志 四.测试负载均衡、监控和日志效果 五.server常用可选项 1.check 2.weight 3.backup 4.disabled 5.redirect prefix和redir 6.maxconn 六.调度算法 1.静态 2.动态 一.快速安装lu…...

GenICam-GenApi简介
EMVA 1288标准之GemICam-GenApi学习与解读 背景介绍 当前相机不仅用于传输图像,还打包了越来越多的功能。这就导致相机的编程接口越来越复杂。 GenICam的目标是为所有类型的相机提供一个通用的编程接口,无论相机使用何种接口技术,或者实现…...

如何创建纯净版Django项目并启动?——让Django更加简洁
目录 1. Django的基本目录结构 2. 创建APP 2.1 创建app 2.2 配置文件介绍 3. 迁移数据库文件 3.2 连接数据库 3.1 创建迁移文件 3.2 同步数据库 4. 纯净版Django创建 4.1 剔除APP 4.2 剔除中间件 4.3 剔除模板引擎 5. 最终 1. Django的基本目录结构 在我们创建Django项…...

蓝桥杯 2022 省A 选数异或
一种比较无脑暴力点的方法,时间复杂度是(nm)。 (注意的优先级比^高,记得加括号(a[i]^a[j])x) #include <iostream> #include <vector> #include <bits/stdc.h> // 包含一些 C 标准库中未包含的特定实现的函数的头文件 usi…...

计数器选型参数,结构原理,工艺与注意问题总结
🏡《总目录》 目录 1,概述2,工作原理2.1,触发器(Flip-Flop):2.2,计数器结构:2.3,计数操作:2.4,模式控制:2.5,扩展与级联:3,结构特点3.1,触发器3.2,加法器3.3,时钟控制电路...

Android 性能优化实例分享-内存优化 兼顾效率与性能
背景 项目上线一段时间后,回顾重要页面 保证更好用户体验及生产效率,做了内存优化和下载导出优化,具体效果如最后的一节的表格所示。 下面针对拍摄流程的两个页面 预览页 导出页优化实例进行介绍: 一.拍摄前预览页面优化 预览效果问题 存在…...

IT服务监督管理案例分析题
习题一 根据国家电网提出建设智能电网,信息化作为推进电力企业实现发展战略目标的和目标的核心保障体系,作用日益突出。这其中更需要进步推动信息运维综合监管系统的深化应用工作。 某软件股份有限公司是国内IT运维管理服务提供商,为多家电…...

【spring】AbstractApplicationContext 的refresh() 方法学习
上一篇我们一起学习了【spring】FileSystemXmlApplicationContext 类学习 AbstractApplicationContext 的refresh() 方法介绍 AbstractApplicationContext的refresh()方法仍然是整个Spring应用程序上下文初始化的核心流程入口。大体上的刷新生命周期依然保持一致。 refresh(…...

零基础10 天入门 Web3之第1天
10 天入门 Web3 Web3 是互联网的下一代,它将使人们拥有自己的数据并控制自己的在线体验。Web3 基于区块链技术,该技术为安全、透明和可信的交易提供支持。我准备做一个 10 天的学习计划,可帮助大家入门 Web3: 想要一起探讨学习的…...

【1】网络协议基础概念
【1】网络协议基础知识 1、互联网2、为什么要学习网络协议3、学习中需要搭建的环境4、客户端-服务器5、Java 的跨平台原理6、C/C的跨平台原理7、一个简单的SpringBoot项目(1) pom.xml(2) application.yml(3) NetworkStudyApp.java(4) SwaggerConfig.java(5) HelloWorldControll…...

flutter 中 GetxController 和 GetxService 的区别和使用场景
区别: GetxController: GetxController 用于管理特定页面或 widget 的状态。每个页面或 widget 可以拥有一个或多个 GetxController,用于管理其自身的状态和逻辑。GetxController 是短暂存在的,通常与页面或 widget 的生命周期相关…...

Python+Django+Yolov5路面墙体桥梁裂缝特征检测识别html网页前后端
程序示例精选 PythonDjangoYolov5路面墙体桥梁裂缝特征检测识别html网页前后端 如需安装运行环境或远程调试,见文章底部个人QQ名片,由专业技术人员远程协助! 前言 这篇博客针对《PythonDjangoYolov5路面墙体桥梁裂缝特征检测识别html网页前…...

uniApp使用XR-Frame创建3D场景(7)加入点击交互
上篇文章讲述了如何将XR-Frame作为子组件集成到uniApp中使用 这篇我们讲解如何与场景中的模型交互(点击识别) 先看源码 <xr-scene render-system"alpha:true" bind:ready"handleReady"><xr-node><xr-mesh id"…...

单元测试11213123231313131231231231
使用技术 junit Mockito s[romg 示例代码: SpringBootTest(classes启动类.class) public class AbstractTes{ MockBean protected A a; } AutoConfigureMockMvc(printOnlyOnFailure false) public abstract class AbstractWebTes extends AbstractTes imple…...

libVLC 捕获鼠标、键盘事件
在实现播放器的时候,我们需要捕获键盘、鼠标事件进行视频快进、快退,或者双击全屏/退出全屏窗口、鼠标右键弹出菜单栏。默认情况下,在使用libVLC库的时候,我们无法捕获这些事件,因为我们将Qt的视频窗口传递给了libVLC。…...

京东云0基础搭建帕鲁服务器_4核16G和8核32G幻兽帕鲁专用服务器
使用京东云服务器搭建幻兽帕鲁Palworld游戏联机服务器教程,非常简单,京东云推出幻兽帕鲁镜像系统,镜像直接选择幻兽帕鲁镜像即可一键自动部署,不需要手动操作,真正的新手0基础部署幻兽帕鲁,阿腾云atengyun.…...

OpenCV 如何使用 XML 和 YAML 文件的文件输入和输出
返回:OpenCV系列文章目录(持续更新中......) 上一篇:如何利用OpenCV4.9离散傅里叶变换 下一篇: 目标 本文内容主要介绍: 如何使用 YAML 或 XML 文件打印和读取文件和 OpenCV 的文本条目?如何对 OpenCV …...

playbook的介绍、应用与实施
playbook的介绍、应用与实施 文章目录 playbook的介绍、应用与实施1. 实施playbook1.1 Ansible Playbook与临时命令1.2 格式化Ansible Playbook1.3 运行playbook1.4 提高输出的详细程度1.5 语法验证1.6 执行空运行 2. 实施多个play2.1 缩写多个play2.2 play中的远程用户和特权升…...

uniApp使用XR-Frame创建3D场景(5)材质贴图的运用
上一篇讲解了如何在uniApp中创建xr-frame子组件并创建简单的3D场景。 这篇我们讲解在xr-frame中如何给几何体赋予贴图材质。 先看源码 <xr-scene render-system"alpha:true" bind:ready"handleReady"><xr-node><xr-assets><xr-asse…...

阿里云CentOS7安装Hadoop3伪分布式
ECS准备 开通阿里云ECS 略 控制台设置密码 连接ECS 远程连接工具连接阿里云ECS实例,这里远程连接工具使用xshell 根据提示接受密钥 根据提示写用户名和密码 用户名:root 密码:在控制台设置的密码 修改主机名 将主机名从localhost改为需要…...

78.子集90.子集2
78.子集 思路 又回到了组合的模板中来,这道题相比于前面的题省去了递归终止条件。大差不差。 代码 class Solution {List<List<Integer>> result new ArrayList<>();LinkedList<Integer> listnew LinkedList<>();public List<…...

基于Ubuntu的Linux系统安装jsoncpp开发包过程
执行以下命令: sudo apt update sudo apt install libjsoncpp-dev有可能出现的问题: 1.如果在执行sudo apt update时出现以下信息 Hit:1 http://mirrors.aliyun.com/ubuntu bionic InRelease Hit:2 http://mirrors.aliyun.com/ubuntu bionic-security…...

葵花卫星影像应用场景及数据获取
一、卫星参数 葵花卫星是由中国航天科技集团公司研制的一颗光学遥感卫星,代号CAS-03。该卫星于2016年11月9日成功发射,位于地球同步轨道,轨道高度约为35786公里,倾角为0。卫星设计寿命为5年,搭载了高分辨率光学相机和多…...

Jenkins升级中的小问题
文章目录 使用固定版本安装根据jenkins页面下载war包升级jenkins重启jenkins报错问题解决 K8s部署过程中的一些小问题 ##### Jenkins版本小插曲 在Jenkins环境进行插件安装时全部清一色飘红,发现是因为Jenkins版本过低导致,报错的位置可以找到更新je…...

Apache Hive的基本使用语法(二)
Hive SQL操作 7、修改表 表重命名 alter table score4 rename to score5;修改表属性值 # 修改内外表属性 ALTER TABLE table_name SET TBLPROPERTIES("EXTERNAL""TRUE"); # 修改表注释 ALTER TABLE table_name SET TBLPROPERTIES (comment new_commen…...