基于Node.js的萤火虫旅行社的设计与实现
摘要:改革开发的春风给旅游业的发展插上了腾飞之翅,旅游业成为朝阳企业中最闪耀的新星。中国的旅游业的规模不断扩大,经济效益持续新增长意味着我们已从旅游资源短缺迈入旅游经济大国行列。旅游开发在我国市场经济中的产业地位和经济管理功能逐步增强,对国民企业经济增长的作用日益重要。
近年来,我国科学技术的快速发展,互联网也进入了一个新的阶段,各行各业都与之挂钩并且有了更为深入的融合与渗透。而且人们大量、便捷发布、获取和传递信息的渠道也是互联网,它给我们在政治、经济、生活等方面都带来了便捷。为了适应社会的发展,各行业都做出了相应的改变。传统旅游企业的宣传已经远远不能满足现有的市场需求,互联网的飞速发展是提供一种方式来提供的旅游和商业的新渠道。经济发展水平的提升从而也使得中国人民的生活质量水平得到了极大的提高。随之而来的就是人们想要通过追求更加多样化的方式从而使得他们的假期可以让他们有一次与众不同且难以忘怀的体验,而外出旅游则成了大多数人民首要的选择之一。目前市场上已经有很多介绍旅游景点,报团出游的旅游网站了,但是市面上比较少有适合自驾游或者自由行旅游网站,而萤火虫旅行社就是这样子的一个平台,该网站适用于自驾游或者自由行的旅客,网站可以通过其他旅客的旅行经历给到那些即将想去某个旅游景点的旅客们提供一个更为详细且全面的介绍。
本网站是一个依赖互联网、轻量、便捷的旅游信息发布,分享旅游过程趣味记忆的平台。系统开发过程中所用到的技术主要是node.js,采用Express框架构造函数对功能进行构建。本系统包括登录注销模板、旅游信息的发布模板、景点风景图欣赏模块、景点讨论区模块以及后台信息维护的模块。
关键词:旅游网站 自驾游 node.js express ejs mysql
Design and implementation of firefly travel agency based on node.js
Abstract: The spring breeze of reform and development has added wings to the development of tourism, and tourism has become the most shining star among Chaoyang enterprises. The scale of China’s tourism industry continues to expand, and the continuous new growth in economic benefits means that we have moved from a shortage of tourism resources to a rank of a major tourist economy. The industrial status and economic management functions of tourism development in China’s market economy are gradually strengthened, which is increasingly important for the economic growth of national enterprises.
In recent years, with the rapid development of science and technology in China, the Internet has entered a new stage. The development of informatization drives the development of other industries, and all walks of life are linked to it and have a deeper integration and penetration. And the channel through which people publish, obtain, and transmit information in large quantities and conveniently is also the Internet, which brings us convenience in politics, economy, and life. In order to adapt to the development of society, various industries have made corresponding changes. The propaganda of traditional tourism enterprises has been far from meeting the existing market demand. The rapid development of the Internet is a new way to provide tourism and business. The improvement of the level of economic development has also greatly improved the quality of life of the Chinese people. What follows is that people want to pursue a more diversified approach so that their vacation can give them a unique and unforgettable experience, and traveling has become one of the first choices of most people. At present, there are already many tourist sites on the market that introduce tourist attractions and travel groups, but there are few sites on the market that are suitable for self-driving or free travel. Firefly Travel is one such platform. For free travelers, the website can provide a more detailed and comprehensive introduction to those who want to go to a certain tourist attraction through the travel experience of other travelers.
This website is a platform that relies on the Internet, is lightweight, and convenient for publishing travel information and sharing interesting memories of the travel process. The technology used in the system development process is mainly node.js, which uses Express framework constructors to build functions. The system includes a login and logout template, a tourist information publishing template, a scenic landscape appreciation module, a scenic area discussion module, and a background information maintenance module.
Key words: Travel website self-driving travel node.js express EJS MySQL
目录
第1章 绪论 1
1.1 系统开发的背景及意义 1
1.2 国内外旅游网站研究现状 1
1.2.1国外旅游网站发展状况 1
1.2.2国内旅游网站发展状况 2
1.3 论文的主要研究内容 2
第2章 系统需求分析 4
2.1 系统的需求分析 4
2.2 系统的功能需求 4
2.2.1用户管理模块 5
2.2.2 旅游景点模块 5
2.2.3 旅游景点评论模块 5
2.2.4 旅游景点风景图模块 6
2.2.5 旅游攻略搜索模块 6
2.2.6 旅游攻略模块 6
2.3 数据流图 6
2.4 数据字典 7
(1)数据存储描述 7
(2)数据处理描述 8
2.5 用例图 8
2.6 实体关系图(E-R图) 9
2.7 本章小结 9
第3章 系统设计 10
3.1 系统设计 10
3.1.1 系统总体架构设计 10
3.1.2 数据库设计 10
3.1.3 系统模块的设计 14
3.2 本章小结 16
第4章 系统实现 17
4.1 用户管理模块的实现 17
4.2搜索模块的实现 20
4.3旅游攻略模块的实现 20
4.4评论模块的实现 21
4.5 本章小结 23
第5章 系统测试 24
5.1 系统测试 24
5.1.1 测试的意义 24
5.1.2 测试的目的 24
5.1.3 软件测试方法 24
5.2 测试用例及测试结果 24
5.3 本章小结 25
第6章 结束语 26
6.1 全文总结 26
6.2 课题展望 26
参考文献 27
致 谢 28
第1章 绪论
1.1 系统开发的背景及意义
据统计数据显示,2012年中国旅游行业总收入仅仅达2.58万亿元,2013年中国旅游行业总收入突破4万亿元,截止至2017年中国旅游行业总收入增长至5.4万亿元左右,同比增长15.14%[1]。
以上众多数据都说明一个现象:近十年的时间,人们的物质生活需求由于经济水平的提高而得到了满足,并且精神文化的需求也在日渐增长。随之而来的就是人们想要通过追求更加多样化的方式从而使得他们的假期可以让他们有一次与众不同且难以忘怀的体验,而外出旅游则成了大多数人民首要的选择之一。
目前市场上已经有很多介绍旅游景点,报团出游的旅游网站了,但是市面上比较少有适用于自驾游或者自由行旅游网站,而萤火虫旅行社就是这样的一个平台,该网站适用于自驾游或者自由行的旅客,网站可以通过其他旅客的旅行经历给到那些即将想去某个旅游景点的旅客们提供一个更为详细且全面的介绍。
1.2 国内外旅游网站研究现状
1.2.1国外旅游网站发展状况
国外发展旅游业比我国较早,加上十年来,世界上每个国家的经济都迅速发展起来,科学技术同样在不断革新,互联网的诞生更是催生了不少新产业的发展,比如说:旅游电子商务行业即旅游网站。互联网诞生以来为旅游业发展提供了许多机遇,加快了旅游信息的传播,销售方式的变革,对旅游业的影响真的是意义深远。
美国是旅游电子商务的先行者, 其旅游电子商务在世界上一直居于领先的地位。 2012年,美国仍然是全世界最大的B2C电子商务市场。美国不仅已经形成了规模大且相对成熟的旅游电子商务市场, 而且进入了稳健发展的增长期[14]。
别国看到美国旅游电子商务发展所带来的经济效益,也纷纷开始发展旅游电子商务行业。
1.2.2国内旅游网站发展状况
20世纪末21世纪初,中国旅行社成功建立了第一个旅游网站“中国旅游网”,此举开启了旅游新时代的序幕。虽然研究表明我国的旅游业务电商化起步晚于发达国家,但是国家的大力支持使旅游业发展迅速,加上互联网技术的不断革新,因此赶超不少发达国家,这使得我国打造了不少旅游城市,大力发展旅游业,渐渐转变成为了一个旅游大国。
电子商务旅游业在竞争中迅速发展为朝阳产业,取得喜人的成绩。仅到2014年,我国就有大大小小旅游网站890余家。
旅游网站的兴起,进一步促进了我国旅游业的发展,传统旅游业的经营模式也开始发生改变,由一开始的线下宣传为主转变为如今的线下线上同步宣传,宣传效果大大增加,旅游信息的快速传播更是带动了人们对旅游的向往,让人们可以足不出户就可以通过旅欧网站来了解旅游景点的信息,订购旅游套餐等都加速了旅游业的发展。
1.3 论文的主要研究内容
本文主要介绍了在VsCode平台上用Node.js开发一个论坛型旅游网站的过程。系统主要实现了旅游景区的信息共享,包括管理员注册登录、旅游景区查询、旅游景点信息的展示、景点论坛等几模块,相应的完成了对旅游景点文章信息的查询、用户权限分配等工作,使旅行社的信息展示与分享变得美观、方便快捷,促进人们对旅游景区景点介绍的进一步了解。本文的主要研究内容如下:
(1)利用VsCode平台、Express框架构造函数、Node.js运行环境实现论坛型旅游系统。
(2)介绍了系统实现的主要技术,包括了Express,ejs和Node.js运行环境的开发流程。
(3)本文通过长期的调查和需求分析,得知系统准确需求后在需求分析的基础上对系统进行了详细的设计,包括系统的总体架构、数据库的选取及设计和系统功能模块的设计。
第2章 系统需求分析
2.1 系统的需求分析
需求分析需要和用户达成共识,了解用户的要求,引导用户将需求描述得更加具体化,结合实际情况分析,确定系统的基本功能模块。系统性能需求分析包括了以下几个步骤:
(1)在功能方面,明确系统具体要做什么,在性能方面,确保响应时间与执行速度没有问题,用户可以在系统里完成什么操作。
(2)在系统界面方面,除了要注意输入输出的数据流格式,当系统在不同设备,面临不同的屏幕分辨率,还能否实现自动适应,不出现比例失调状况,在界面展示上用心,提高系统的易用性才能吸引更多用户,一个好的系统需求分析是一个项目成功的基础,只有基础扎实,在系统建设过程才会顺利,不会因界面的问题而拖慢系统的开发进度。
(3)在系统的开放性方面,应提前考虑到,在开发过程中,需求可能会增加或者修改,要提高系统的可维护性。
2.2 系统的功能需求
对萤火虫旅行社系统进行分析,得到以下需求,系统功能模块有用户管理模块,旅游景点模块,景点评论模块,旅游攻略模块,旅游景点风景图模块,旅游攻略搜索模块。系统的功能模块结构图如图2-1所示:
图2-1 系统的功能模块结构图
2.2.1用户管理模块
用户分为普通用户与管理员,普通用户可以对旅游景点进行评论,但是无法添加任何内容;管理员可以上传旅游攻略,添加景点图片,采纳普通用户对旅游景点的评论。
2.2.2 旅游景点模块
普通用户/管理员都可以浏览网站中给出的具体旅游景点的信息,例如旅游攻略,图片,评论。页面添加点击跳到我国的携程、途牛等著名旅游网站的友情链接,普通用户可以到国内比较著名的旅游网站参考出团价格,了解相关信息等。管理员有对数据进行删除、增加、修改等权限,负责整个系统的更新维护处理,例如更新旅游景点。
2.2.3 旅游景点评论模块
普通用户可以对景点发表自己的旅行经历、写下自己对景点相关感受或者询问已去过的用户相关推荐等的评论,普通用户对景点的评论将由管理员来采纳。
2.2.4 旅游景点风景图模块
普通用户可以浏览景点的风光图,点击小图可查看大图;图片的更新依赖管理员在后台的更新操作,管理员可对图片进行增加、删除、修改等操作。
2.2.5 旅游攻略搜索模块
普通用户/管理员可以通过站内搜索框搜索到他想要了解的信息,如果网站内有则直接显示信息,若没有则显示无相关信息;这样便于普通用户/管理员快速找到自己想要的信息。
2.2.6 旅游攻略模块
普通用户/管理员可以通过站内搜索框搜索到他想要了解的信息,如果网站内有则直接显示信息,若没有则显示无相关信息;这样便于普通用户/管理员快速找到自己想要的信息。
2.3 数据流图