基于Java的旅游网站的设计与实现 毕业设计 源码

摘  要

近年来互联网技术的迅猛发展,使得与互联网相关的网站和产品层出不穷,这极大的方便了用户的生活。各行各业都开始朝着互联网靠拢,互联网解决了传统行业信息化的问题,同时也往往能够帮助解决人们的很多实际问题,譬如现在特别流行的订餐软件,购物软件等。本系统是以Java为主要开发语言,用MySQL实现后台数据库,主流框架采用SSM技术实现的旅游网站,构建出相关的系统需要的开发环境。通过调研,明确了旅游网站的需求,最后开发实现了系统并进行了测试。

关键词SSM;Java;MySQL
 

Abstract 

In recent years, the rapid development of Internet technology has led to an endless stream of Internet-related websites and products, which has greatly facilitated users' lives. All walks of life have begun to move closer to the Internet, which has solved the problems of traditional industry informatization, but also can often help solve many practical problems of people, such as the particularly popular food ordering software and shopping software. This system uses Java as the main development language, uses MySQL to realize the background database, and the mainstream framework uses SSM technology to realize the tourism website, and constructs the development environment required by the relevant system. Through investigation, the demand of tourism website is clarified, and finally the system is developed and tested.

Keywords:SSM;Java;MySQL

目录

摘  要

Abstract

1 绪  论

1.1 研究背景

1.2 研究意义

1.3 研究内容

2 开发技术

2.1 Vue技术

2.2 MySQL技术

2.3 SSM框架

3 需求分析

3.1 可行性分析

3.2 功能需求

3.3 非功能需求

4 概要设计

4.1 功能模块设计

4.2 功能流程设计

4.3 数据库设计

5 系统实现

5.1 登录

5.2 用户管理

5.3 旅游景点管理

5.4 景点购票管理

5.5 酒店信息管理

5.6 旅游景点展示

5.7 旅游景点详细信息

5.8 酒店展示

5.9 酒店详细信息

6 系统测试

6.1 测试方法

6.2 测试用例设计

7 结论与展望

参考文献

致谢

1 绪  论

1.1 研究背景

在21世纪,互联网已经成为了人们生活中必不可少的东西,计算机的技术也在不断的发展。将计算机的技术应用到Internet中,旅游网站的系统功能已经可以让用户在虚拟的环境中使用[1]。

时代在不断发展,互联网也在普及,由于网络十分发达,有非常多的产业可以借助它的优势发展,旅游网站也是其中之一。对于用户来说,旅游网站优势不仅是因为它使用便捷,同时还是因为它有很多选择,而且用户可以利用网络的方式来使用系统功能。人们需要经过长时间排队才能,如果拥有了旅游网站[2],不仅提高了管理员的工作效率,还提升了用户的体验感。

1.2 研究意义

时代在进步,互联网技术也在不断进步。网络早就和人们的生活密不可分,便捷性是旅游网站独有的特点,所以用户很快就接受了[3]。从另一个方面来看,旅游网站还可以推进旅游行业的发展。

长时间以来,有很多景点购票模式都需要用户去景点,这种模式不仅会非常局限,时间地点也会影响到它。与传统的模式相比,旅游网站就具有很多优势。解决门票购买和酒店预定问题通常只需要建立规范的流程,而现在如果需要管理旅游网站的话通常需要管理员以人工的方式来进行管理。由于时代进步,现在旅游行业处理数据的方法也越来越信息化,通常管理旅游网站这种模式需要使用智能化手段进行管理。随着科技的不断进步,信息技术不仅改善我们的生活,还有许多生活场景都离不开信息技术。

1.3 研究内容

(1)为开发和设计系统制定了相关的实施计划,运用了详细的软件开发与设计过程,执行了不同的用户的特定的运营和管理权限,以及相关的功能控制模块的开发,最终完成了该系统的测试。

(2)系统结构可以帮助编程人员快速构建整个软件的层次,这一次的开发采用了SSM,它具有很好的部署和部署能力,可以快速构建相关的基础结构,并可以促进编程人员减少代码的编写,从而提升系统的安全和可靠性,可以带动交通道路违章管理系统的控制模块的处理[4]。

(3)特定的数据处理,必须由源码系统结构来规定用户的特定行为,不仅要符合最基础的规格,还要使用数据库的管理与管理数据库记录,从而推动系统和数据库的信息栏建立各系统的关联。

2 开发技术

2.1 Vue技术

开发完应用系统的时候通常还需要前端界面的美化,在之前的时候,开发前端界面通常需要操作DOM元素完成,但是随着前端技术的不断完善,MVVM设计模式出现了,这样可以方便后续维护前端界面并对其进行优化。MVVM设计模式是MVC模式的一大更新,用户改变View层的数据可以直接同步更新Model。模型的数据发生改变的时候也可以同步更新进View层。Vue.js能够通过绑定数据,如果数据发生改变的时候能够同步更新到DOM上面,这样不仅能够简化程序开发者开发程序的流程,还能够节省不少的精力。在内部的时候,Vue框架能够追踪依赖,如果属性发生改变的时候,需要Vue通知改变[5]。

Vue前端框架相比于其它的框架具有不少的优点:

(1)Vue框架学习成本较低,难度也相对要容易得多。

(2)Vue前端框架能够把系统中的数据存储到异步队列中,这样有利于实现同步更新。

(3)Vue前端框架拥有不同的指令,开发人员利用指令可以操作系统的DOM。

2.2 MySQL技术

MySQL数据库属于关系型数据库,性能较为优秀,目前隶属于Oracle旗下的公司之一。MySQL数据库通常应用在开发Web应用上,属于较为流行的数据库软件之一,可以将旅游网站的数据存放在数据库利用数据库SQL语句定义的表格当中,不用一定将数据存储在同一个地方,这样可以提高对数据库记录访问的速度并增加访问的灵活性[6]。MySQL数据库语句可以被人们轻松理解,简单易用的特点使得较多中小型企业选择使用。MySQL使用的线程为多线程的形式,这有助于支持多处理器进行处理。MySQL通常能够使用高性能库代替函数库,这样可以提高对数据的访问。如果只是想要查询数据库里的数据的时候,一般不会分配内存资源。

数据库实际是一个容器,通过数据结构组织、存储和管理。数据库很大的一个作用为能够管理大量的数据并且提供解决方案。MySQL是较为典型的关系型数据库,具有的特点包括便捷和免费等,中小型Web项目大多数选择的是MySQL数据库[7]。如果使用MySQL数据库会节约不少的成本,很多中小型公司也选择使用MySQL数据库作为公司的数据库。在IT领域当中MySQL为使用人数最多的开源关系数据库中的一种,使用率仅次于目前的Oracle数据库。

2.3 SSM框架

目前最受欢迎的“SSM组合框架”就是( Spring+ Spring MVC+ MyBatis)的简称。

Spring架构的事务声明框架可以在交易中使用,若有宣告性交易,就不必把交易原则与程式码相联系,通过配置文件实现以便业务逻辑组件能够专注于业务逻辑的实现,让商业逻辑元件集中于执行商业逻辑,可降低程式设计师的发展困难[8]。

MVC架构可以实现外卖管理系统的超链接,用户通过表格提交的申请,不会被传送到前面的网页上进行处理,然后再回到前面的网页上,再通过后台的框架对来自前端的网页的要求进行处理。采用了后台结构,可以防止用户对前台网页进行直接的存取,大大增强了系统的安全性能。

MyBatis是一种基于关联的映射架构,它可以通过 JDBC的形式来实现对 MySQL的存取,并且通过 MySQL的操作来实现对 MySQL的存取。开放源码架构 MyBatis以一种非常灵活的方法来处理资料库的纪录,它可以让开发者不需要编写复杂的SQL语句对多张表进行操作,它可以透过对象的方法来处理资料库的纪录,来支援底层的 DAO对象。

3 需求分析

3.1 可行性分析

3.1.1 经济可行性研究

旅游网站能够给管理员带来不少的收益,如果管理员能够拥有旅游网站,则可以对系统进行简单管理,管理员可以节省不少资金。旅游网站的实现能够解决传统管理模式不必要的经济支出,尤其是其中的人力资源成本,旅游网站还有扩大销售渠道,所以经济上是可行的。

3.1.2 技术可行性研究

该系统通过 Mysql 作为数据库支持上千万条记录的处理,足够处理旅游网站内产生的数据,在 Java 语言结合下可以大大提高网站管理者的管理效率。后端使用 SSM 框架进行开发,让系统后端的稳定性更高。而且技术上的开发难度适中,所以技术上是可行的。

3.2 功能需求

图3-1 用户用例图

图3-2 管理员用例图

3.3 非功能需求

(1) 稳定性;旅游网站可以在一定的人数下,进行正常的工作,遇到一些小的问题,也可以迅速的做出处理。

(2) 流畅性。在用户通过客户机进行信息管理时,不能长时间地对各功能模块进行响应。

(3) 可扩充性。软件开发人员在进行旅游网站的功能模块的设计时,应注意各功能模块之间的层次关系,以便维护各功能模块的独立性,便于以后的修改时对其进行扩充。

(4) 操作简单性。在设计和实现旅游网站的过程中,不能有太多的繁琐,用户在使用的时候要方便的点击。

4 概要设计

4.1 功能模块设计

对需求进行分析后,下一步要做的是确定能够满足基本要求的系统,然后根据它设计出对应的系统。系统设计内容里面要明确旅游网站的设计方法,并且将系统功能进行模块划分,先确立好其它模块与各个模块需要的功能之间的关系。系统功能模块图如图4-1所示。

图4-1 功能模块图

4.2 功能流程设计

(1)登录

用户想要使用系统的功能之前首先需要登录,在登录页面中输入用户名和密码之后点击登录按钮,如果通过了验证则能够进入到主页当中。

图4-2 登录流程图

(2)注册

用户在注册页面中需要填写注册信息,如果用户名存在了或者两次密码输入一致的话则不能够成功注册。

图4-3 注册流程图

(3)查询

管理员登录系统之后可以在后台管理中搜索系统的信息,如果输入的系统信息在数据库记录中找不到则不能显示查询信息。

图4-4 查询流程图

(4)收藏

用户可以点击景点列表中的其中一个景点,可以点击收藏按钮收藏景点。

图4-5 收藏流程图

4.3 数据库设计

4.3.1 概念性数据模型

E-R设计是系统数据层设计里面的其中之一, E-R的分析和设计是系统数据实体设计必不可少的一环,数据库表的设计通过E-R来获取,E-R最大的优点是可以描述系统所涉及到的实体和系统中不同实体之间的联系和关系。系统E-R图如图4-6所示。

图4-5 系统E-R图

4.3.2 数据库表设计

(1)旅游景点表

表4-1 旅游景点表

列名

数据类型

长度

主外键

scenic_spot_id

int

10

旅游景点ID

attraction_name

varchar

64

景点名称

types_of_attractions

varchar

64

景点类型

photo

varchar

255

照片

ticket_price

int

10

票价

address

varchar

64

地址

opening_hours

varchar

64

开放时间

scenic_spot_hotline

varchar

64

景区热线

scenery_story

text

65535

景区故事

transportation_guide

text

65535

交通指南

humanities

text

65535

景区人文

details

longtext

2147483647

详情

hits

int

10

点击数

praise_len

int

10

点赞数

(2)客房信息表

表4-2 客房信息表

列名

数据类型

长度

主外键

tickets_for_scenic_spots_id

int

10

景点购票ID

order_number

varchar

64

订单号

attraction_name

varchar

64

景点名称

ticket_price

varchar

64

票价

types_of_attractions

varchar

64

景点类型

purchase_quantity

int

10

购买数量

total_price

varchar

64

总价格

user

int

10

用户

contact_number

varchar

64

联系电话

pay_state

varchar

16

支付状态

pay_type

varchar

16

支付状态

recommend

int

10

智能推荐

create_time

datetime

19

创建时间

update_time

timestamp

19

更新时间

(3)用户信息表

表4-3 用户信息表

列名

数据类型

长度

主外键

user_id

mediumint

8

用户ID

state

smallint

5

账户状态

user_group

varchar

32

所在用户组

login_time

timestamp

19

上次登录时间

phone

varchar

11

手机号码

phone_state

smallint

5

手机认证

username

varchar

16

用户名

nickname

varchar

16

昵称

password

varchar

64

密码

email

varchar

64

邮箱

email_state

smallint

5

邮箱认证

avatar

varchar

255

头像地址

create_time

timestamp

19

创建时间

(4)酒店信息表

表4-4 酒店信息表

列名

数据类型

长度

主外键

hotel_information_id

int

10

酒店信息ID

title

varchar

64

标题

layout_of_a_house_or_an_apartment

varchar

64

房型

photo

varchar

255

照片

price

int

10

价格

address

varchar

64

地址

number_of_rooms

int

10

客房数量

number_of_people_available_for_check_in

varchar

64

可入住人数

room_facilities

text

65535

房间设施

details

longtext

2147483647

详情

hits

int

10

点击数

praise_len

int

10

点赞数

recommend

int

10

智能推荐

create_time

datetime

19

创建时间

update_time

timestamp

19

更新时间

(5)酒店预定表

表4-5 酒店预定表

列名

数据类型

长度

主外键

hotel_reservation_id

int

10

酒店预订ID

order_number

varchar

64

订单号

title

varchar

64

标题

layout_of_a_house_or_an_apartment

varchar

64

房型

price

varchar

64

价格

booking_quantity

int

10

预订数量

booking_days

int

10

预订天数

total_price

varchar

64

总价格

user

int

10

用户

check_in_date

date

10

入住日期

contact_number

varchar

64

联系电话

examine_state

varchar

16

审核状态

examine_reply

varchar

16

审核回复

pay_state

varchar

16

支付状态

pay_type

varchar

16

支付类型

recommend

int

10

智能推荐

create_time

datetime

19

创建时间

update_time

timestamp

19

更新时间

5.1 用户登录

在登录界面中需要使用el-input标签实现输入框供用户输入用户名和密码,需要使用name标签表示不同的信息。在登录界面中还需要包括角色的按钮,使用el-radio表示按钮,用户可以点击按钮从而选择不同的角色。

图5-1 登录界面

5.2 用户管理

图5-2 用户管理界面

5.3 旅游景点管理

图5-3 旅游景点管理界面

5.6 旅游景点展示

图5-6 旅游景点展示界面

 

5.8 酒店展示

图5-8 酒店展示界面

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值