2 系统分析
2.1 可行性分析
2.1.1 技术可行性
在web页面使用JSP技术,JSP技术的目的在于使应用程序能够与各种 Web服务器、应用程序浏览器等进行协同工
作, 将 Java程序片段和相应 JSP标签嵌入到传统的 HTML文件中,就组成了后缀名为.jsp的JSP网页。制作本网站使 用的工具有IntelliJ IDEA 2021.3、MySQL、Navicat Premium15、Tomcat9.0.14。以上所有技术保证整个网站的运 行和美观。因此具有技术可行性。
2.1.2 经济可行性
旅游网站的创建减轻了旅游行业的发传单、打广告等负担和费用,更是让用户可以全面了解旅行网站信息。在 科技信息大爆发时代,旅游网站更容易被接受,节省了用户与工作人员的时间,更好的提高工作效率和服务质量。 同时使用旅游网站可以发展更多的潜在客户,有利于推动旅游行业的客户资源。在酒店方面可以产生合作等方式获 取收益[7]。所有从经济上是可行的。
2.1.3 时间可行性
在收到专题报告后的一个月内,我研究了相关文件、书籍和技术,了解了 旅游咨讯平台的运行情况,确定 了需求目标,并提交了前期报告。在第二个月, 我进行系统分析,并开发功能模块图、流程图、需求分析、系统分 析、系统架构、详细数据库设计、数据表和域设计。完成了系统接口设计、具体方案设计和模块编程。提交中期报 告。在第三个月,完成了系统的大部分调试和实现细节。完成毕业设计的最后一个月,完成毕业设计,完成系统的 测试。完成论文的初稿、校订、校订、毕业答辩、准时完成,因此在时间上是可行的。
2.2 需求分析
2.2.1 功能性需求
未注册用户浏览网站时没有查看详情页面的权限,需注册登录后才可进入。对于已经注册的用户分为两种角 色,一种是游客登录,游客可以查看浏览各个模块查询景点,美食查询、修改密码、预定酒店、选择路线。另一种 则是管理员登录,由具有管理员权限的用户进入管理员界面,对用户进行管理、录入景点信息、删除景点信息、修 改景点信息、查看景点信息、录入线路信息、删除线路信息、录入酒店信息、删除酒店信息、修改酒店信息、录入 美食信息、删除美食信息、修改美食信息等。
2.2.2 非功能需求
(1)可用性
从网站主界面设计到后台设计都进行了大量的测试,不断改正bug,尽可能的减少bug的数量。对数据的存储选 取适合的数据库可以放心使用。用户个人的注册登录,对景点信息详情的浏览,对景点的定位导航都可以实现[8]。 用户也可以对酒店进行提前的一个预订。 旅行社网站的系统界面设计明确,操作简明,具有完备的异常处理机 制,便于用户轻松掌握。体现了本网站系统的可用性。
(2)安全性
用户只有登录后才可以对系统网站进行操作,未登录时无法浏览详细页面,无法进行查询,登录后才可以进 入,保证网站的安全运行,维护系统的稳定,因此本系统具有一定的安全性。
(3)完整性
该网站的设计可以满足广大游客的基本需求,可以让用户在旅游网站内浏览美食信息,预订酒店,选择线路。 同时,本网站还提供了各种景点、美食、酒店信息的增删、查访等功能,从各个方面满足了用户的需求,符合网站 设计的完整性。
3 开发环境与技术介绍
3.1 网站模式
该站点采用 B/S模型,并将浏览器与服务器相结合,以达到数据交互的目的。 本机安装了Chrome浏览器,服务 器安装MySQL等数据库,浏览器通过Web server和数据库进行数据交互[9]。
3.2 开发环境
本网站以Windows10为操作系统,IntelliJ IDEA为开发平台Java为开发语言,Java语言在本次网站设计中贯穿 始终,以Java为基础来开发,Java源代码不拘泥于特定的环境,不同的开发工具通过调试将源代码进行编译,编译 后就可以直接运行,
将 JSP技术用于 Web应用, 它可以让 Web应用软件与各种 Web服务器、应用浏览器等协作。在传统的 HTML文件 中, JSP和 Java代码可以被嵌入到 HTML文件中,并且使用.jsp做后缀。
通过使用JDBC,Java类程序可以通过 JDBC向所有的驱动数据传送 SQL语句,这样就可以从应用和基础数据库中分离。
制作本网站使用的工具有IntelliJ IDEA 2021.3、MySQL、Navicat Premium15、Tomcat9.0.14。
3.3 技术介绍
3.3.1 Spring Boot
Spring Boot使基于 Spring的应用程序开发变得简单,它可以通过“run”来创建独立的生产级别的 Spring程 序。Spring Boot为 Spring平台和第三方库提供了默认设置,用于存储默认配置的程序包就是启动程序,因此我们 可以轻松地启动。 Spring Boot作为搭建程序的脚手架,帮我们快速的构建巨大的Spring项目,并且尽可能的减少 xml的配置,开箱即用[11]。
3.3.2 JSP简介
JSP(全称JavaServer Pages)是由原Sun Microsystems公司共同建立起来的一种动态网页技术标准[12]。JSP 的实现是在传统网页HTML文件使用Java语言和对应的JSP标志组成了后缀为.jsp的JSP网页。继承了Java的相对易用 性,JSP页面中不存在Java代码程序,在web服务器接收到访问JSP页面请求时会去执行网页中代码段。JSP使用能够 反复使用的组件,和简单的语言一次编写,任何地方都可以运行。
3.3.3 JDBC
可以通过 JDBC编写的程序来实现 SQL声明的自动化。JDBC的主要作用是:同一个数据库可以创建相同的链接, 将 SQL语句发送到数据库,并对数据库进行处理,并将其返回结果进行处理[13]。 数据库连接在本次网站设计中可 以实现动态网站起到至关重要的作用。JDBC是 Java和 Java程序在运行时使用数据库的基础,目前许多数据库系统 都是利用 JDBC驱动来实现数据库的增、删、查等功能。本次采用的数据库系统为MySQL。
4 系统设计
4.1 功能模块设计
本系统在用户和管理员不同背景下登录,其功能模块各不相同,通过对整个系统的需求进行分析,系统具体功能。
4.1.1 管理员功能设计
1.系统管理:管理员对网站系统管理,维护系统的稳定性;
2.景点管理:管理员对旅游景点的管理,可以对景点进行增删改查的操作;
3.路线管理:管理员对旅游路线的管理,规划旅游路线,实时更新和添加;
4.酒店管理:管理员对酒店信息的管理,实时更新酒店信息,酒店位置。可以进行增删改查操作;
5.用户管理:管理员对游客信息的管理,保护游客用户信息。
6.美食管理:管理员对美食信息的管理,对特色美食信息进行增删改查等操作;
7.酒店订单管理:游客如果想取消酒店预订,需联系客服管理员进行删除。
4.1.2 用户功能设计
1.用户注册:用户进入本网站后,需要注册后才可以进入详情页面;
2.用户登录:登录分为游客登录和管理员登录,不同用户登入到界面不同;
3.浏览旅游景点,选择想要去的景点,可以看到景点详情,点击地图导航;
4.浏览旅游路线,根据自己的需求,选择合适的旅游路线;
5.浏览景点酒店,根据导航位置选择景点附近酒店,预订酒店;
6.浏览美食,不知道吃什么,可以根据网站提供的美食推荐去选择。
5 系统实现
5.1 系统流程分析
“基于Java的 旅游网站的设计与实现”的服务对象是旅游游客,所提供的信息围绕游客的需求而制定。
网站分为前台和后台。 前台有如下JSP页面:主页页面,用户注册页面,用户登录页面,景点查询页面,景点信 息查询页面,酒店预订页面,美食推荐页面。后台的功能是便于管理人员管理网站,包括景区信息管理、用户管 理、酒店管理、线路管理、美食管理等。 旅游网站流程图如图。
从用户进入网站后,用户将对是否注册本网站做出选择, 若用户未注册,只能在网站执行浏览功能的操作。用 户登录后,通过浏览、查询各模块,完成预定。在主页上可以通过退出的方式退出账号。管理员需要登录管理员帐 号,然后再跳到管理员界面,管理员可以进入系统管理,管理用户,景点,美食,酒店和酒店的订单。其中对用户 和酒店订单只能执行删除操作,对其他管理都可以实现增删改查操作。管理员界面也可以看到用户模块效果和执行 功能效果,在首页退出即可执行退出账号操作。
5.2 注册模块设计
该模块完成了新用户的登记,为用户的登记提供了一个向导式的填写流程,同时,还能及时地保存用户的注册 信息,并能纠正新用户的注册信息。注册界面:index.jsp。本界面禁止重复登录,请填写手机号码(不可重复输 入),同时输入用户名称(不可重复使用),设置6位以上的密码,全部填写以上信息后点击获取验证码。在验证码 获取部分使用注解@RequestMapping(“/sendSmsCode”)使用function sendSmsCode(){}获取图片验证码,校验后得到 弹窗验证码。注册完成后跳转界面rejisterSuccess.jsp界面则为注册成功,在注册成功界面使用ul、li标签实现页 面布局。注册成功后返回主页或直接登录,其效果图如图5-1所示。
图5-1注册效果图
5.3 登录模块设计
该模块提供了一个用户登录界面,通过对手机号码和口令进行验证,以确定用户的身份。未登录的使用者仅可 在网页上浏览网页,登录网页: login. jsp。如果没有注册的帐号,可以点击进入注册界面,有帐号的使用者需要 输入一个电话号码或者一个用户名的名字,然后输入一个密码,这样就可以登录了。用String t1 = "1{6,12}
"
;
来判断密码是否为数字、字母。使用
i
f
(
!
i
s
N
o
t
N
u
l
l
(
u
s
e
r
n
a
m
e
)
)
语句判断手机号或用户名不可为空。使用
";来判断密码是否为数字、字母。使用if (!isNotNull(username))语句判断手机号或用户名不可为空。使 用
";来判断密码是否为数字、字母。使用if(!isNotNull(username))语句判断手机号或用户名不可为空。使用(‘#forgetPwd’).on(‘click’, function () )实现找回密码的按钮事件。其功能效果图如图5-3和图5-4所示。
图5-3登录页面图
大数据最早是互联网行业中的专业词汇,主要指的是无法经由人工在规定的时间内处理成可读性较高的信息的大规模数据量,它具有大量多变的特点,也需要新型的处理方式去促成更强的决策能力、洞察力与优化处理。不论就哪一种领域而言,大数据具有的应用潜力都是巨大的,现如今,人们最为关键的工作便是基于海量的数据探寻事件本身的规律,分析数据潜在的意义。
0-9A-Za-z ↩︎