springboot基于java的旅游信息管理系统的设计与实现

 

相比于传统的旅游信息管理方式,智能化的管理方式可以大幅提高旅游信息的管理效率,实现了旅游信息管理的标准化、制度化、程序化,有效地防止了旅游信息的随意管理,提高了信息的处理速度和精确度,能够及时、准确地查询和修正旅游信息情况等信息。

课题主要采用java技术和MySQL数据库技术以及springboot框架进行开发。系统主要包括系统首页,个人中心,用户管理,衣服类型管理,服装展示管理,商品购买管理,景点类型管理,景点推荐管理,景点预订管理,住宿信息管理,客房预订管理,公交路线管理,系统管理等功能,从而实现智能化的旅游信息管理方式,提高旅游信息管理的效率。

关键字:旅游信息;java;MySQL数据库

 

Abstract

Compared with the traditional tourism information management, intelligent management can greatly improve the efficiency of tourism information management, realize the standardization, institutionalization and program of tourism information management, effectively prevent the arbitrary management of tourism information, improve the speed and accuracy of information processing, can timely and accurately query and correct the tourism information information.

The project mainly uses java technology, MySQL database technology and springboot framework for development. The system mainly includes the system home page, personal center, user management, clothing type management, clothing display management, commodity purchase management, scenic spot type management, scenic spot recommendation management, scenic spot booking management, accommodation information management, room reservation management, bus route management, system management and other functions, so as to achieve intelligent tourism information management. Improve the efficiency of tourism information management.

Key words: tourism information; java; MySQL database

扫描二维码关注公众号,回复: 17271088 查看本文章

目  录

1 绪  论............................................................................................................................... 5

1.1项目背景...................................................................................................................... 5

1.2研究意义...................................................................................................................... 6

1.3设计目的...................................................................................................................... 6

1.4设计思想...................................................................................................................... 6

2系统开发技术................................................................................................................... 8

2.1 Java技术...................................................................................................................... 8

2.2 MySQL数据库............................................................................................................... 8

2.3 SpringBoot框架............................................................................................................. 8

2.4 B/S体系结构介绍......................................................................................................... 9

3系统分析.......................................................................................................................... 10

3.1需求分析.................................................................................................................... 10

3.2系统性能分析............................................................................................................. 10

3.3可行性分析................................................................................................................. 11

3.3.1经济可行性....................................................................................................... 11

3.3.2技术可行性....................................................................................................... 11

3.3.3社会可行性....................................................................................................... 12

3.4系统用例分析............................................................................................................. 12

3.5 系统流程图................................................................................................................ 14

4 系统设计......................................................................................................................... 16

4.1系统功能结构设计图................................................................................................... 16

4.2数据库设计................................................................................................................. 17

4.2.1数据库设计原则................................................................................................ 17

4.2.2 数据表设计...................................................................................................... 19

4.2.3数据库连接....................................................................................................... 29

4.3本章小结.................................................................................................................... 30

5系统详细设计................................................................................................................. 31

5.1系统功能实现............................................................................................................. 31

5.2后台模块实现............................................................................................................. 33

5.2.1管理员模块实现................................................................................................ 34

5.2.2用户模块实现................................................................................................... 37

5.3本章小结.................................................................................................................... 38

6 系统调试与测试............................................................................................................ 39

6.1软件测试原则............................................................................................................. 39

6.2软件测试过程............................................................................................................. 40

6.3测试用例.................................................................................................................... 41

6.4本章小结.................................................................................................................... 42

结    论............................................................................................................................. 43

参考文献............................................................................................................................. 44

致    谢............................................................................................................................. 45

1 绪  论

近年来,随着互联网科技的进步和发展,人们的生活水平得到了极大的提高,游客的数量也在快速增加,以至于各大旅游信息的数量不断扩大,管理旅游信息工作也日渐繁重。由于传统的旅游信息管理方式,人工管理成本高,效率低,还存在游客的数量不明确,与管理人员沟通方面的压力。所以人工管理方式在很大的程度上存在弊端。给人们的生活带来了非常大的不便,导致不能满足现在社会的需求。现如今对旅游信息的管理成为一个越来越受关注的社会问题,对于能够快速的找到工作,也是为了提高旅游信息管理的效率。现在的旅游信息的管理也是在完善。

1.1项目背景

主要是对于旅游信息工作调研,以及对旅游信息采集、存储、查询和更新。在旅游信息管理问题上对于现有管理上的不足,用户可以通过后期查询旅游信息情况,从而使旅游信息管理更加便利。

用户的不同,导致所给权限的不同。管理者可对所有信息进行修删查,其他注册用户需要进行相应的操作标准,给几种不同用户不同权限与界面,从而让系统更加广泛的使用与任何旅游信息上的管理。

在实际的系统项目开发中,需要怎么做开发和一些现实中的做法是紧密结合在一起的,整体开发的过程还有应用的场景通常也会是一个持续发展的过程,在一个特定的设计中,如何开发,将会对实际的实施流程产生影响,要注意到怎样进行部署和运行。因此,整个系统的研究与开发是紧密相连的。如果真的将其划分为几个独立的阶段,而忽略它作为一个综合的考虑,那么每一步的实施过程都不可避免地会遇到前一阶段考虑不完全而导致的问题,从而影响整体开发的效率。

设计者往往以需求为中心进行工作,而大多数的功能需求是从总体上进行分析和思考,即从设计者的角度去了解需求。但是要真正理解真实需要,光从开发人员的观点出发还远远不够,还需要从实际的行业发展以及相关地方情况考虑,要从更高的层面去分析,这是真实的需要;同时,我们也要更好的了解他们的用户思维,了解他们的应用情况,和他们的思想,这是他们的需要。

1.2研究意义

社会进步的步伐带动了信息技术的发展,信息化的建设使得人们生活的节奏加快,至使人们更加注重信息的时效性。陈旧的管理获取信息方式将无法满足人们的需求。从而人们更加关注在线系统管理。在线系统管理可以满足现代人们获取信息实时、便捷等特点,只要有网络的地方,就能迅速查找到想要的信息。

计算机技术已成为人们管理信息的重要工具。能解决人们获取信息更加有效快捷,提高人们的工作效率为重要手段。

1.3设计目的

通过对旅游信息管理内容的学习研究,进而设计并实现一个基于智能推荐的旅游信息管理系统。系统实现的主要功能包括系统首页,个人中心,用户管理,衣服类型管理,服装展示管理,商品购买管理,景点类型管理,景点推荐管理,景点预订管理,住宿信息管理,客房预订管理,公交路线管理,系统管理等功能的操作。还有可以正确的为用户服务,准确显示当前信息。

在旅游信息管理系统的前期,即需求分析阶段,我们对旅游信息的需求进行了详细的描述,并且在需求规范中有详细的描述和阐明。根据系统需求的分析,对旅游信息的管理进行了整体的设计。着重对软件模块的设计进行了详细的分析,以达到对系统的需求。重点阐述了系统的划分、接口的确定、各模块间的数据传输、数据结构与模块结构的设计。在下面的概要设计中,将会详细地描述这个阶段中的系统。

1.4设计思想

在开发与设计中,要有正确的开发思路,要对开发环境、语言、架构、操作系统这些方面做一些了解,最后就是完整的思路模式。系统的设计按照以下原则执行:

(1)有效性原则

能够进行有效的设计,对于用户来说是比较满意的,正常情况下可以满足需求,还有是有用的特定意义,可以说都是在有效的范围里。都是用一些操作,还有开发的思维,能够给使用者带来的使用。所谓设计就是需求的想法,不完整就不能够算是一个好的系统,可以使用的系统有效性是很高的,而且还有效使用,在实现用户的需求时才能够很好而不会有错误的。

(2)可扩展性

从“可伸缩”的意义来看,许多人认为,讨论改进性能、实现高可用性,甚至是专门的技术和协议。很明显,这些都与可扩充性无关,你必须知道有关速度、性能、可用性、应用平台、网络等等,但是,这并不是一个可扩充的定义。其核心内容是增加一个功能逻辑,或者减少一个功能,逻辑上并不会影响到其他已经编写好的功能模块,这就是可扩展性含义。

系统的可扩展性设计非常重要,但是又非常难以掌握,很多试图通过高并发语言等方式缓解开发者精力,但是,无论采取什么技术,如果应用系统内部是比较的麻烦,比如对数据库的严重依赖,当系统的存取规模达到一定程度时,就会将资源集中在一个或两个数据库服务器上,这时进行分区扩展伸缩就比较困难[1]。

(3)用户的需求原则

在设计系统之前,一般都是先了解一下系统,了解一下系统中的信息在哪里,然后再进行相应的设置。但我们也承认,许多使用者并不能真正了解设计师的想法,并且经过研究发现,系统所服务的对象是广大的用户,并不是掌握这些知识的设计者,所以我们得通过特殊的界面来实现让用户方便使用的系统。

2系统开发技术

2.1 Java技术

Java属于一种面向对象的编程语言,它由C++发展而来。Java保留了C++语言大部分好的优点,同时放弃了C++里很那的多继承、指针等概念。Java从根本上解决了C++的固有缺陷,形成了一种新的完全面向对象的语言,因此Java语言的句法更加清晰、规模也更加的小、更容易学等多个特征。Java语言作为静态面向对象编程语言的代表,完美地实现了面向对象理论,使程序员能够以优雅的思维执行复杂的编程。

2.2 MySQL数据库

MySQL的语言是非结构化的,当对客观事物的符号进行描述时,数据则是信息的载体,数据库负责记录跟踪这些数据。数据库用来记录分析保存生成的数据,在系统项目中起到了很重要的作用。MySQL数据库体积小,作用快,相对于其他数据库而言性价比较高,适合中等网页的开发,并且服务很稳定,几乎不存在宕机情况。

2.3 SpringBoot框架

现如今后台开源框架主流的有SSH、SSM、SpringBoot,但是SSH、SSM框架的环境配置项较多,而SpringBoot主要的设计思想就是约定大于配置,故而SpingBoot在设计时几乎达到零配置。SpringBoot整合了业界上的开源框架。具体采用技术框架描述如下:

(1)Mybatis:Mybatis:提供自动映射,动态SQL,级联,缓存,注解,代码和SQL分离等特性,使用方便,同时也对SQL进行优化[10]。

(2)SpringMVC:通过一套MVC注解,让POJO成为处理请求的控制器,无需实现任何接口,同时,SpringMVC还支持REST风格的URL请求[11]。

(3)SpringBoot:从本质上来说,Spring Boot就是Spring,它做了那些没有它你也会去做的Spring Bean配置[12]。

SpringBoot是一款非常强大后台框架,因为SpringBoot开发时可以基本不用写配置文件,所以使用SpringBoot搭建网站的后台环境,在SpringBoot的yml配置文件中写入项目启动端口,项目就可以启动。项目的Java文件还有静态文件都是由SpringBoot来管理。

2.4 B/S体系结构介绍

B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器,如Chrome、Safari、Microsoft Edge、Netscape Navigator或Internet Explorer,服务器安装SQL Server、Oracle、MySQL等数据库。浏览器通过Web Server同数据库进行数据交互。

3系统分析

3.1需求分析

要想在实际的情况下,开发出一套符合使用者要求的旅游信息管理系统,首先要了解使用者的需求。对旅游信息的需求有深刻的了解,无论设计与开发工作多么优秀,都是一个成功的先决条件,也可以这么说,要不能满足用户需求的程序,是创造不出非常大的使用价值的,而且还给设计者带来很多的不利。需求分析是旅游信息管理系统设计时期的比较重要的一个阶段,它的基本内容是准确地解释出系统将会能够做些什么事情的关键问题,最终完成的是一份完整的系统的使用说明。

(1)有一些功能方面的需求,通过需求分析,可以找出需要完成的几个基本功能模块。性能要求也是指在系统设计的时候,需要满足一定的要求和限制,比如响应时间、信息处理、内存容量、磁盘容量、安全等等。

(2)系统的可靠性要求也是一个必须考虑的问题,它可以将可用性和可靠性结合起来,显示了用户在使用时经常遇到的问题。硬件要求也包括需要处理错误,以表明系统如何应对环境错误。如果自己的系统收到来自其他系统的信息,这些信息违背了某些格式,这时系统应该会有什么样的响应情况。

(3)软件方面的需求还有一些逆向的需求,就是系统不能做的事情。可以说,有很多种不同的要求,而开发人员应该能够准确的理解他们的真正需要,并且可以应用到旅游信息管理系统中。还有应该明确地找出一些虽然不属于当前旅游信息管理系统开发的情况,但是据现在的分析,将来是非常可能会需要的可能需求。经过这个需求的分析,在设计过程中对旅游信息管理系统将来有机会出现的问题有所准备,要能够确实需要的时候可以更加轻松的修改。

3.2系统性能分析

系统的性能是指操作系统完成现有的程序的有效性、稳定性以及响应速度,操作系统完成一个任务时,与系统自身设置、路由的设计、网络性能的测试、设备的使用情况等多个方面都密切相关,要是任何一个环节出现问题,就都会影响整个系统的性能。所以要从网络的设置、系统的操作、硬件的组合、程序的应用等方面综合检查,然后问题出现在哪个部分,可以集中进行解决。

在程序的应用、系统的操作、硬件的组合、网络的设置等方面,影响性能最大的是程序的应用和系统的操作两个方面,因为这两个方面如果出现的问题是不太容易察觉,隐蔽性非常的强。而硬件的组合、网络的设置只要出现问题,一般都能马上发现。主要了解一下系统的操作方面的性能操作思路,程序的应用方面需要具体问题还需要有具体的解决办法。

随着智能设备的快速发展,以及对于网络的深入认识,这种高度分布式架构最终会变为移动计算。但是,随着计算量的日益增大,系统架构师开始将计算任务转移到共享网络的计算上,这样,他们就可以利用共享网络的计算可以无限制的计算量和存储相关的资源,并享受其带来的比较高的可靠性以及低成本。因此,近年来,许多的企业开始向以共享网络计算为中心的更加有效化的方式发展。

3.3可行性分析

3.3.1经济可行性

系统采用的是java技术来实现相应的功能的开发,综合就是一个比较基础的系统开发设计,所以所用到的有开源的开发环境所构成。而且可以利用现有的设备,不用进行另外的硬件设备购买。

用户通过使用旅游信息管理系统,很大程度减小了人员成本,极大提高了管理的效率。目前得由人员管理的方式存在很多不足,首先是人工成本大,并且工作效率比较低,然后是存在着很多现金流失的问题。在结合旅游信息管理系统的特点,还有一些记录和统计,旅游信息管理杜绝了以上的问题,提高了旅游信息管理的安全性。

经济可行性是主要计算项目的开发成本,还有项目成功后可能带来的有效收益。很多的项目只有开发成本能控制在企业有可能接受的范围内的情况下,这样的项目才会被批准开发。然而本次系统的开发在上述所有的问题的情况下,是可以完成相关的系统设计。

3.3.2技术可行性

在研究技术可行性的时候,系统的开发环境是可以确定的,所以技术可行性最好与系统功能和性能以及一些实际的情况同时考虑。在可行性研究阶段,结合实际调整开发的内容和选择能够完成的技术体系是一个可用的手段,如果系统进入开发阶段,任何的调整都意味着会耗费更多的经历。需要再次明确的问题是,技术可行性不只是考虑在技术上是否可实现,实际上还包含了在当前的实际的情况下的技术可行性。有很多的因素例如时间不足、预期的开发目标技术难度比较难、不能有充足的技术积累、而且对于技术的掌握不够等这些实际存在的情况,都是要提前部署和认真规划的。

开发旅游信息管理系统的技术内容分析,目前的状况是从网络硬件和相关技术上看是可行的。该系统采用了java和MySQL技术。到现在可以知道,很多的基础知识都是经过学习使用的,在后续的设计中还需要不断的练习,学习更多相关的技术经验来充实自己对于系统的开发。

3.3.3社会可行性

在社会可行性分析中,首先能结合国家经济和社会发展的实际情况,还需要能够让用户更加的便利,给使用者带来多方面的高效益,使得可以比较快速的发展以及应用。

在可行性分析中,是比较清晰地发掘开发的系统带来的各种直接的有效的利益以及一些隐藏起来的好处,以便在后续的设计中更加的坚定和确信系统开发的意义。解决一些社会方面存在的问题,设计并开发系统肯定是要发现某类社会存在的问题,并且能够带来一定的社会价值。还有一些社会的影响力,是通过系统优势和切实的好处来产生的,能够在一定的情况下提高效率,肯定会增加一些社会的进步和发展。社会上的可行性,包括法律上的可行性,也包括法律上的可能性,法律上的可行性,需要社会上的许多因素[2],可以来实现系统建设的现实性。如果所开发的系统与国家法律或政策等相关的因素不相符合,在某些信息化的邻域中使用的是一些加密的信息或者技术问题,还有不经过正常的操作使用其他的一些公开的信息等这些情况,这样的系统的开发在法律的范围中就是不能被允许的。

其中还有一个比较重要的用户使用可行性也是通过执行系统时的可行性,是从所有情况下用户的角度来考虑系统的可行性,由于设计开发相关的系统就是站在社会中广大的用户体验考虑的,所以在这个层面考虑也是符合的。

3.4系统用例分析

在设计系统的过程中,用例图是系统设计过程中必不可少的模型,用例图可以更为细致的,结合系统中人员的有关分配,能够从细节上描绘出系统中有关功能所完成的具体事件,确切的反映出某个操作以及它们相互之间的内部联系。

其中参与者就是和系统能够发生交互的外在实体,一般可以指系统的某个用户。一个用例图就能对应出系统中的一个功能过程,系统中完整的功能都是由许多不同的用例图所组成的。

系统用例图如图3-1、图3-2所示。

图3-1 管理员用例图

图3-2 用户用例图

3.5 系统流程图

流程图就是用它已经特定的图形符号以及相应的线条,用来展现出系统在执行中的整个的过程。由于这种图形能够很方便的描绘系统的一系列流程,所以它的所有的图形符号是比较关键的,基本都是一个图形符号就能表示某个过程的一个单独的步骤。流程图不只是提供出比较完整、全面的执行过程,而且在整个团队的协作设计过程中,还可以发现其中有可能存在的缺陷以及不足,便于在后续的过程中能够及时的纠正和完善系统。

通过流程图可以对系统的需求和相关过程进行分析,能够详细的细分到每个部分的设计。对于设计者来说在开发过程中能够使用流程图作为基础,可以快速提高自身的逻辑思想,并且还能在后续的操作中能够有章可循,在系统的设计中最重要的就是程序的设计,然后才是程序的具体编写,流程图便是在设计过程中重要的工具,以下就是部分流程图设计。

登录流程图和添加信息流程图分别如图3-3、图3-4所示。

登录流程图

图3-3 登录流程图

图3-4 添加信息流程图

4 系统设计

4.1系统功能结构设计图

本次系统所涉及到的有关的功能,都是用功能结构图来简洁和清晰的表示出来,功能结构图就是能够把比较复杂的功能结构用图的形式清晰的描绘下来,并且为后续的设计以及测试等模块提供了明确的方向,在构思功能结构图的时候,便可以给设计的过程带来一定的思维导向,不至于在设计过程中有所遗漏,可以尽可能的明确系统所涉及到的功能。

系统的功能结构图如图4-1所示。

图 4-1系统功能结构图

4.2数据库设计

4.2.1数据库设计原则

学习程序设计,如果要了解数据库管理系统或者是根据需求而制定的系统接口,就必须创建一种数据库管理系统的模式,用来保存数据资料,这样当在应用编程过程中时候,就不需要再向操作系统页面上加载信息,进而增加了整个系统的工作效率。信息库管理系统中保存着许多数据,应该说是一个管理信息系统建设的中心和基础,而信息库管理系统也为管理信息系统建设提出了新增、删除、更改和搜索的操作功能,使管理信息系统建设能够迅速地查询所需要的数据,而不会直接从程序代码中查找。信息库管理系统通过将信息表的各个组成部分按照特定的方法准确地合并,排序和组成信息库管理系统。

通过对旅游信息管理系统的主要功能信息进行规划并分为若干功能实体信息,实体信息将使用E-R图加以表示,本系统的主要功能实体图如图4-2、图4-3、图4-4、图4-5、图4-6所示。

图4-2景点论坛实体图

图4-3住宿信息评论表实体图

图4-4商品购买实体图

图4-5关于我们实体图

图4-6景点资讯实体图

4.2.2 数据表设计

在关系数据E-R图中,分析并创建数据表,数据表用来记录信息,数据表关系由多个数据表组成,下面介绍的是数据表各个字段信息如下表所示。

表4-1:景点类型

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

jingdianleixing

varchar

200

景点类型

表4-2:公交路线

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

xianlubianhao

varchar

200

线路编号

xianlumingcheng

varchar

200

线路名称

fengmian

longtext

4294967295

封面

piaojia

float

票价

banci

varchar

200

班次

fachezhandian

varchar

200

发车站点

tujingdi

varchar

200

途径地

zhongdianzhanming

varchar

200

终点站名

luxianxiangqing

longtext

4294967295

路线详情

gengxinshijian

date

更新时间

clicktime

datetime

最近点击时间

clicknum

int

点击次数

0

表4-3:住宿信息

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

kefanghao

varchar

200

客房号

kefangmingcheng

varchar

200

客房名称

kefangleixing

varchar

200

客房类型

fengmian

longtext

4294967295

封面

jiage

float

价格

zhuangtai

varchar

200

状态

dizhi

varchar

200

地址

lianxidianhua

varchar

200

联系电话

kefangshebei

longtext

4294967295

客房设备

kefangjieshao

longtext

4294967295

客房介绍

thumbsupnum

int

0

crazilynum

int

0

clicknum

int

点击次数

0

表4-4:景点论坛

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

title

varchar

200

帖子标题

content

longtext

4294967295

帖子内容

parentid

bigint

父节点id

userid

bigint

用户id

username

varchar

200

用户名

avatarurl

longtext

4294967295

头像

isdone

varchar

200

状态

表4-5:住宿信息评论表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

refid

bigint

关联表id

userid

bigint

用户id

avatarurl

longtext

4294967295

头像

nickname

varchar

200

用户名

content

longtext

4294967295

评论内容

reply

longtext

4294967295

回复内容

表4-6:景点推荐评论表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

refid

bigint

关联表id

userid

bigint

用户id

avatarurl

longtext

4294967295

头像

nickname

varchar

200

用户名

content

longtext

4294967295

评论内容

reply

longtext

4294967295

回复内容

表4-7:商品购买

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

yifumingcheng

varchar

200

衣服名称

yifuleixing

varchar

200

衣服类型

jiage

float

价格

goumaishuliang

int

购买数量

zongjine

float

总金额

goumaishijian

datetime

购买时间

yonghuzhanghao

varchar

200

用户账号

ispay

varchar

200

是否支付

未支付

表4-8:用户表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

username

varchar

100

用户名

password

varchar

100

密码

role

varchar

100

角色

管理员

addtime

timestamp

新增时间

CURRENT_TIMESTAMP

表4-9:配置文件

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

name

varchar

100

配置参数名称

value

varchar

100

配置参数值

表4-10:景点资讯

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

title

varchar

200

标题

introduction

longtext

4294967295

简介

picture

longtext

4294967295

图片

content

longtext

4294967295

内容

表4-11:token表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

userid

bigint

用户id

username

varchar

100

用户名

tablename

varchar

100

表名

role

varchar

100

角色

token

varchar

200

密码

addtime

timestamp

新增时间

CURRENT_TIMESTAMP

expiratedtime

timestamp

过期时间

CURRENT_TIMESTAMP

表4-12:在线客服

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

userid

bigint

用户id

adminid

bigint

管理员id

ask

longtext

4294967295

提问

reply

longtext

4294967295

回复

isreply

int

是否回复

表4-13:关于我们

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

title

varchar

200

标题

subtitle

varchar

200

副标题

content

longtext

4294967295

内容

picture1

longtext

4294967295

图片1

picture2

longtext

4294967295

图片2

picture3

longtext

4294967295

图片3

表4-14:客房预订

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

yudingbianhao

varchar

200

预订编号

kefangmingcheng

varchar

200

客房名称

kefangleixing

varchar

200

客房类型

jiage

float

价格

ruzhutianshu

int

入住天数

zongjine

float

总金额

yudingshijian

date

预订时间

yonghuzhanghao

varchar

200

用户账号

yonghuxingming

varchar

200

用户姓名

shoujihaoma

varchar

200

手机号码

ispay

varchar

200

是否支付

未支付

表4-15:景点预订

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

jingdianmingcheng

varchar

200

景点名称

jingdianleixing

varchar

200

景点类型

jingdiandengji

varchar

200

景点等级

kaifangshijian

varchar

200

开放时间

jingdianrexian

varchar

200

景点热线

piaojia

int

票价

yudingrenshu

int

预订人数

zongjiage

int

总价格

goupiaoshijian

datetime

购票时间

yonghuzhanghao

varchar

200

用户账号

yonghuxingming

varchar

200

用户姓名

ispay

varchar

200

是否支付

未支付

表4-16:收藏表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

userid

bigint

用户id

refid

bigint

商品id

tablename

varchar

200

表名

name

varchar

200

名称

picture

longtext

4294967295

图片

type

varchar

200

类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注)

1

inteltype

varchar

200

推荐类型

remark

varchar

200

备注

表4-17:景点推荐

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

jingdianmingcheng

varchar

200

景点名称

jingdianleixing

varchar

200

景点类型

jingdiandengji

varchar

200

景点等级

tupian

longtext

4294967295

图片

piaojia

float

票价

piaoshu

int

票数

kaifangshijian

date

开放时间

jingdianrexian

varchar

200

景点热线

xiangxidizhi

varchar

200

详细地址

jingdianxiangqing

longtext

4294967295

景点详情

clicktime

datetime

最近点击时间

clicknum

int

点击次数

0

表4-18:服装展示

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

yifumingcheng

varchar

200

衣服名称

yifuleixing

varchar

200

衣服类型

yifutupian

longtext

4294967295

衣服图片

jiage

float

价格

yifuxiangqing

longtext

4294967295

衣服详情

fabushijian

datetime

发布时间

表4-19:用户

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

yonghuzhanghao

varchar

200

用户账号

yonghuxingming

varchar

200

用户姓名

mima

varchar

200

密码

xingbie

varchar

200

性别

touxiang

longtext

4294967295

头像

shoujihaoma

varchar

200

手机号码

youxiang

varchar

200

邮箱

表4-20:衣服类型

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

yifuleixing

varchar

200

衣服类型

4.2.3数据库连接

在本系统的设计与开发中,数据库承担着重要的作用,可以说要是没有数据的存储和管理,而系统也不会执行对应的函数。数据库是基于数据结构而设计的,数据库管理员利用数据库管理系统对海量数据进行管理,而数据库的添加、删除、修改、查询等都是非常关键的一环。

在本系统中首先进行数据库的连接,具体的配置文件uimg_sql.py中进行数据库的连接,还有创建了本次数据库中所用到的表和相关的一些参数,这些操作和建立的实现是通过在java中编写完成的,有一些时间点的记录,旅游信息是在数据库uchepai中完成的。

4.3本章小结

本章是系统开发的整体的一个系统设计,主要通过系统功能的设计,还有具体实现中需要考虑到的结构之间的关系,以及系统中每个功能执行的先后顺序等问题做出了详细的设计。

其次是对于数据库的具体实现的设计,首先是将数据库与开发系统相结合的特定数据库的连接问题,做出了数据库应该储存的一些数据,还有存储数据用到的一些表格的创建,以及表格里面内容的设计等工作。

5系统详细设计

5.1系统功能实现

当人们打开系统的网址后,首先看到的就是首页界面。在这里,人们能够看到旅游信息管理系统的导航条和商品推荐信息等。系统首页界面如图5-1所示:

图5-1 系统首页界面

系统注册:在系统注册页面的输入栏中输入用户注册信息进行注册操作,系统注册页面如图5-2所示:

图5-2系统注册页面

服装展示:在服装展示页面的输入衣服名称和衣服类型进行查询,可以查看到服装详细信息,并根据需要进行购买操作;服装展示页面如图5-3所示:

图5-3服装展示详细页面

景点推荐:在景点推荐页面的输入景点名称和景点类型进行查询,可以查看到景点推荐详细信息,并进行预订、评论或收藏操作,景点推荐页面如图5-4所示:

图5-4景点推荐详细页面

住宿信息:在住宿信息页面通过输入客房号,客服类型和状态进行查询,可以住宿详细信息客房预订,评论或收藏操作;住宿信息页面如图5-5所示:

图5-5住宿信息详细页面

个人中心:在个人中心页面可以对个人中心、我的发布和我的收藏进行详细操作;

图5-6个人中心界面

5.2后台模块实现

后台用户登录,在登录页面选择需要登录的角色,在正确输入用户名和密码后,进入操作系统进行操作;如图5-7所示。

图5-7 后台登录界面

5.2.1管理员模块实现

管理员进入主页面,主要功能包括对系统首页,个人中心,用户管理,衣服类型管理,服装展示管理,商品购买管理,景点类型管理,景点推荐管理,景点预订管理,住宿信息管理,客房预订管理,公交路线管理,系统管理等进行操作。管理员主页面如图5-8所示:

图5-8 管理员主界面

管理员点击用户管理。在用户页面输入用户账号进行查询、新增或删除用户列表,并根据需要对用户详情信息进行详情、修改或删除操作;如图5-9所示:

图5-9用户管理界面

管理员点击衣服类型管理。进入衣服类型页面输入衣服类型进行查询、修改或删除衣服类型列表,并根据需要对衣服类型详细信息进行详情、修改或删除操作。如图5-10所示:

图5-10衣服类型管理界面

管理员点击商品购买管理。在商品购买页面输入衣服名称进行查询,新增或删除商品购买列表,并根据需要对商品购买详细信息进行详情、修改或删除操作。如图5-11所示:

图5-11商品购买管理界面

管理员点击景点预订管理。在景点预订页面输入景点名称进行查询、新增或删除景点预订列表,并根据需要对景点预订详细信息进行详情、修改或删除操作。如图5-12所示:

图5-12景点预订管理界面

管理员点客房预订管理。在客房预订页面输入预订编号进行查询,新增或删除客房预订列表,并根据需要对客房预订详细信息进行详情、修改或删除操作。如图5-13所示:

图5-13客房预订管理界面

5.2.2用户模块实现

用户进入系统可以对系统首页,个人中心,商品购买管理,景点预订管理,客房预订管理等功能进行操作。用户主页面如图5-14所示:

图5-14用户主界面

用户点击商品购买管理。在商品购买页面输入衣服名称进行查询商品购买列表,并根据需要对商品购买详细信息进行支付、详情操作。如图5-15所示:

图5-15商品购买管理界面

5.3本章小结

在本章的设计过程中,首先是根据前的功能总结构设计的基础上,对于每个功能的实现,做了一些整体的设计。数据的连接是由数据库完成,通过了正常的连接。然后可以成功的建立一些系统开发所用到的表格。

6 系统调试与测试

系统的测试是必须的,需要知道的是这个阶段不是单独的,而是在全部的时间进行。这么做可以及时发现问题,还能找到产生矛盾的地方,并且可以尝试修改,这样就能完善系统。对于被测试的系统,都可以找到一些问题,而且还可以找到对应的位置在哪。其目的是对于整体的测试,发现需求中存在的矛盾,就可以做出修改了。测试的过程是对应于整体,有对软件的测试,发现需求的符合度,接下来,就是对数据的检测,以及对硬件的检测。

在软件测试规划中,必须了解测试流程,包括功能概述,测试周期,测试方法,测试范围,测试配置,测试技巧,测试交流,风险分析等[12]。对于一些开发的人员,是可以知道测试方法,找到测试过程的一些的问题,然后可以应对这些问题。

6.1软件测试原则

系统的项目开始启动,系统测试也就是正式开始。软件的是有很多特殊性质,其一些测试也是整体的时间,不是一个单独的过程,因为有可能在所以时间段里,可以有不同的问题。从需求分析、系统设计的过程中,就可以进行系统的测试,制定相应的测试内容和设计文档,并且在整个开发过程中,都要进行系统的审核和确认[13],只有这样,才能更快的发现错误,从而提升系统的质量。为了更早地进行检测,让测试人员可以早知道测试难度,还有进行工作的准备,提前了解关于问题的风险,便于能够提高测试的效率,而且还能保证开发质量,还能够避免风险存在于测试里的,可以有更加完善的方案。

在测试过程中有一些问题,还有一些不足能被发现,这样测试可以使软件中有比较少的问题。有些人觉得只要能够通过软件测试的系统,就不会再存在任何问题,便可以比较放心的使用。这种把软件测试夸大的思想是违反原则的。总的来说即使软件测试能够发现任何问题,也不足以证明软件当中就没有任何的问题,系统就是完全正确的。软件测试必须很快地到软件开发过程中,这样就可以很快的地发现软件缺陷,并且越快发现软件问题,软件的修复成本就会越小。可以让测试人员加入需求的开发过程,以确保需求的可以测试的性质、正确性等,便可以更加有效地节省开发带来的成本。在有关于测试的环节当中也会尽早的找到问题,要是开发人员在某个模块发现了问题,那么在这模块中或许会存在不止一个问题。现在软件都比较复杂,而且测试也有难度,几乎不能有测试可以是完全。

测试是在一定的顺序,每个不同的阶段能够由出现的问题,可以了解到它的风险,这样也可以加强测试,从而可以保证软件使用时的质量。测试是需要比较早开始的,一方面就是保证软件的质量,有效的降低风险以及成本。测试的人员一般在分析需求时候就已经开始测试准备了,使得系统的不足在需求或者设计阶段就可以被发现出,就这点来说发现越早,能够修复的成本就越小。测试的设计可以确定测试的有效性以及效率问题,测试的工具只是提升了测试的效率,而非测试本身。在设计一个测试案例时,是还能改善可靠性,可以用更有效的方法。

6.2软件测试过

软件测试中每当用户提出新的功能需求时,测试人员需要与开发人员一起做测试,这样测试人员就会对本次测试有个比较清晰的认识,具体要完成什么,都有什么功能等。而且当集成测试在完成后,开发的模块就会被联接在一起,从而形成一个完整的程序。每个各模块间的接口存在的许多缺陷都被消除,就可以进入了确认测试的阶段。确认测试是按照软件的需求规格,对软件进行评估是确保它否满足需求规格,然后决定最后的软件是否正常。

在测试规范后,就可以进行测试用例的编写,主要根据功能模块而展开,例如界面包括哪些操作,其中的操作是否可以正常进行,然后根据相关功能来设计,可以根据不同的情况来设计,对于一些测试过程中出现的问题等,以便查找测试任务的相关情况。

(1)单元测试

这种测试是一种用代码的编写,然后完成的测试方法,在整个检测流程中,是一个非常关键的步骤。在一项有关的程序中,可以进行测试的代码,这种的步骤和实现功能的运行过程是一样的,更加能够突出实现的时候,有关于一些数据的正确还有难易的问题。而且单元测试都由开发人员自己来实现。通常都是开发人员有义务编写相关的功能模块代码,由于对于这些问题的出现,会比别人更加的清楚。有目的单元测试,就是能够出现相应地方代码的执行行为与我们预期的具有一样的效果。一般是由开发人员查看相关代码来查找出问题,而且同样是不同的开发人员相互查看对方的代码,这样才能发现更多的问题。在使用工具扫描程序时,可以根据程序的一些错误的特征,是能够发现而且记录代码中的错误原因。还有就是可以使用工具能够自动生成测试用例,而且也能执行相关程序的测试,这种方式也是由于发现一些行为上的特征,并且报告错误的原因,这种测试的方法只能够发现一些明显的错误的问题,对一些不明显的错误就不能测试出原因所在,就比如一直简单的加法函数,其中的错误是相对比较简单的,但是以上的测试方法仍不能发现,是由于这种测试工具不可能自动的理解代码的功能。

(2)系统测试

所谓系统测试,就是把被确定的软件系统,包括电脑的硬件和网络,都是一个整体,它可以完成整个系统的检测和验证[14],系统试验是对整个软件系统进行的一次试验,其目的在于检测该系统能否达到要求,发现一些和需求规定不一样或者有歧义的地方,从而能够提出更加有效的方案。这里要有出现的任何问题,为了能够找到出现问题的位置,就是需要有调试的过程,然后进一步的改正。

这种测试也能够发现和规定不一样的时候,或者是出现的一些矛盾。都是需要提前有关于规定的需求做出比较,做出能够在实际的应用里,可以运行的一些对应的测试过程的用例。

(3)集成测试

集成测试是在单元测试后面开始的,将确定测试单元之间可以相互协调的运行。由于在很大的情况中,需要的系统不是有单独的几个或者一个人来完成,所以在前面的测试过程是,通过负责独立部分的开发者,同时也要负责这里的功能测试。但是如果要是把所以的测试部分都整合在一起,就可以发生一些问题。所以这里的测试是能够说明,不同的负责者的模块可以完全的正常执行,通常在执行集成测试之前,是必须先执行单元测试。

集成测试通过将逻辑上相关的两个或许多的功能模块连接起来执行增量的测试,接着又加入更多功能模块,以及对其功能进行的测试,一直到完成所有功能模块的集然后成功测试为止。集成测试又可以是自上而下方法[15],一般从测试最顶层的功能模块开始,接着一步步地降到最低的功能模块,其中测试是按照软件的具体控制流程从上到下的进行。还可以是自底向上的集成测试,可以很快的发现底层功能模块的问题,能够提高测试的效率。如果要是了解整个的框架,就必须是对应的功能测试在可以检测完的条件。

测试过程中的集成是相对容易的,而且用到的方法也是不太难,根据对应的方法,做出测试用例的需要也比较少,但是由于无法避免的功能模块间接口的问题,所以能够一次运行成功的可能性比较小。而且要是一次集成的功能模块数量比较多,在集成测试后有可能还出现大量的错误,这样系统的错误定位以及相关的修改就会存在比较大的问题,即便能够完成集成测试,但是有可能会留下很多的错误进入系统测试。

6.3测试用例

部分系统测试用例如表6-1所示。

表 6-1 测试用例表

测试功能、流程

预期结果

实际结果

结论

测试管理登录。管理员在登陆页面输入对应信息可以进入主页面

登陆成功,

之后跳转页面

登陆成功,

成功跳转页面

测试成功

6.4本章小结

一开始系统的测试是可以不用考虑整个的程序,只是考虑它的某个正常的部分,而且也可以不用看到其正常的运行的功能,暂时先不用了解具体的结构是什么样。只是用软件就能确定的测试,能够判断出测试的精确程度。这个软件的测试,其实是用一个软件的内部构造来进行的。同时经过一些分析来测试的。同时也是由代码进行的软件测试,开发者可以通过检查代码或利用开发工具,来判定系统的质量。

在正常的情况下,需要软件的安装程序必须能够比较好的与现存在系统是可以兼容的,而且还能有相关的提示信息,可以让用户查看,接着正常安装然后实现相应的功能。所以在这里就体现了测试的重要性,要是没有一些正确的测试过程就会导致软件安装上的错误,然后软件就不能正确的运行,所以在这里安装的测试就是比较重要的环节。其中安装的测试的目的就是检验系统能否可以成功的安装,同时也保证系统安装完成了可以正常运行。

在软件开发之后,会对软件做出测试。通过对软件的检测,能够发现软件的实际用法,主要是用户为主的,然后系统的开发人员以及质量保证的测试人员也应加入的测试。主要考虑的问题是各个功能是不是规范的,还有一些用户的会有的问题。不仅仅是一个方面的质量问题,而是需要进行全方位是功能验证,最后要确定软件是否符合要求,所以验收的测试是一项比较严格的测试项目,需要根据事先制订的一些相关的计划,进行对于软件配置的审查、功能的测试、性能的测试等,最后才能确保软件的正常使用。

结    

在本次毕业设计中,我使用Java技术,并选择MySQL作为后台数据库进行访问和修改。在设计之初,我对系统逻辑功能的具体实现也很纠结,因为我对旅游信息管理的概念还比较模糊,期间我也在网上查询了大量的信息,清楚地了解了现实生活中旅游信息管理的主要对象和管理需要完成的基本功能。

而在这个过程中也遇到了很多困难,主要有系统逻辑功能的不恰当和系统设计上的错误,当在自己获取信息时无法解决,我会与同学和老师商量和讨论,所以在这个过程中,也让我知道认识到自己的不足和团队的力量是最大的,无论是在学习还是工作中,要融入集体,这样自己才会成长得更快。

当然,在本次设计中,由于时间的不足和本人能力的限制,功能还不完善,对于论文的不足之处,希望在今后的学习中不断改进,使本系统更接近实际操作。

参考文献

[1]孙卫琴,李洪成.Tomcat Java Web 开发技术详解》.电子工业出版社,20186

[2]BruceEckel.Java编程思想》. 机械工业出版社,201810

[3]FLANAGAN.Java技术手册》. 中国电力出版社,20186

[4]孙一林,彭波.Java数据库编程实例》. 清华大学出版社,20188

[5]LEE ANNE PHILLIPS.《巧学活用HTML4.电子工业出版社,20198

[6]飞思科技产品研发中心.JSP应用开发详解》.电子工业出版社,20199

[7]耿祥义,张跃平.JSP实用教程》. 清华大学出版社,20205

[8]孙涌.《现代软件工程》.北京希望电子出版社,20208

[9]萨师煊,王珊.《数据库系统概论》.高等教育出版社,20182

[10]Brown.JSP编程指南(第二版)》. 电子工业出版社 ,20183

[11]清宏计算机工作室.JSP编程技巧》. 机械工业出版社, 20215

[12]朱红,司光亚.JSP Web编程指南》.电子工业出版社, 20219

[13]赛奎春.JSP工程应用与项目实践》. 机械工业出版社, 20208

[14] 肖英. 解决JSP/Servlet开发中的中文乱码问题[J]. 科技传播, 2021, (1)11-25

[15]石正喜. SQL数据库实用教程. 北京:北京师范大学出版社 2018

致    

四年的本科学习很快就要结束了。这段时间的校园生活充满了温暖和幸福。在家人的支持下,在老师的悉心指导下,在同学们的热情支持下,我度过了充实的本科阶段。

首先,我要感谢我的导师。我的论文是在导师的悉心指导下完成的。从论文最初的选题、构思到后来的写作,导师都给予了我悉心的指导。在我完成初稿后,我的导师花时间仔细修改了我的论文,并提供了很多中肯的指导,使我的研究和写作过程相对顺利。我想借此机会向我的导师表达我深深的谢意。

其次,我还要感谢我的其他大学老师们。正是因为他们严格、无私、高质量的教学,我在这些年的学习中获得了专业知识,为我的论文写作奠定了坚实的理论基础。我还要感谢四年来和我一起生活学习的本科同学和室友。我真诚地感谢他们在学习和生活上的鼓励和帮助。愿我们的友谊天长地久!

我也要感谢我的父母在我学习期间无微不至的关心和照顾。正是他们的理解和支持,让我能够专心学习。同时,我也要感谢四年来同学们对我的包容和帮助。他们让我的生活每天都充满了激情和意义。最后,再次向母校的老师们表示衷心的感谢和良好的祝愿!感谢您的辛勤栽培。祝所有的老师幸福健康!

猜你喜欢

转载自blog.csdn.net/2301_79305643/article/details/132684286