基于某JavaWeb技术地旅游网站地设计与实现.docx
《基于某JavaWeb技术地旅游网站地设计与实现.docx》由会员分享,可在线阅读,更多相关《基于某JavaWeb技术地旅游网站地设计与实现.docx(35页珍藏版)》请在冰豆网上搜索。
基于某JavaWeb技术地旅游网站地设计与实现
分类号:
TP311.1UDC:
D10621-408-(2016)2593-0
密级:
公开编号:
2012121068
成都信息工程大学
学位论文
基于JavaWeb技术的旅游网站的设计与实现
论文作者姓名:
申请学位专业:
网络工程
申请学位类别:
工学学士
指导教师姓名(职称):
论文提交日期:
基于JavaWeb技术的旅游网站的设计与实现
摘要
由于互联网的快速的发展和使用人数的普遍提高,计算机和互联网在人们生活中的地位已经表现的越来越重要了。
将旅游行业与互联网结合在一起已经成为了一种必然的趋势。
旅游行业最重要的就是应该要有完善的旅游信息供人们了解各地名胜风景及其周边信息,通过计算机网络技术可以轻松的收集、整理各种旅游信息。
相比过去传统的方法,如通过书籍、报刊等获取旅游信息,计算机网络技术大大节省了人们耗费的时间与精力。
将计算机网络技术与旅游行业结合起来不仅方便了人们的生活出行,并且有助于加快旅游行业的整体发展。
此文根据旅游行业目前的发展趋势,提出了一种可行的解决办法:
采用jsp技术、MVC模式、mysql数据库、jdbc技术等,设计开发了一个现代化的旅游网站并实现对旅游信息的网络化管理,网站功能包括:
发表旅游信息、用户登录和注册、用户更改个人信息、查看景点信息、用户交流、酒店预订等功能,论述了设计开发的基本过程,文章共分为前言、旅游网站需求分析、旅游网站系统概要设计、旅游网站详细设计、旅游网站系统测试,其中重点介绍了各功能模块的实现过程。
关键词:
旅游网站;Mysql;信息管理;JSP
TheDesignandAchieveofTourismWebsiteBasedonJavaWebTechnology
Abstract
WiththerapiddevelopmentoftheInternettechnologyandthepopularizationofcomputers,computersandtheInternethavebecomemoreandmoreimportantinpeople'slives.IthasbecomeaninevitabletrendtocombinethetourismindustrywiththeInternet.Itisthemostimportantforthetourismindustrythatpeoplecangetacomprehensivescenicspotinformationandinformationaroundthescenicspots,peoplecancollectandsortoutavarietyoftourisminformationthroughthecomputernetworktechnologyeasily.Comparedwiththetraditionalmethods,suchastheuseofbooks,newspapersandothertravelinformation,computernetworktechnologyhasgreatlysavedpeople'stimeandenergyconsumption.Itisnotonlyconvenientforpeopletotravel,butalsohelpstospeeduptheoveralldevelopmentofthetourismindustryifwecancombinethecomputernetworktechnologywiththetourismindustry.
Accordingtothecurrenttrendofdevelopmentofthetourismindustry.thepaperproposedafeasiblesolutionandbuildamoderntouristsitesusingJSPtechnology,MVCpattern,MySQLdatabaseandJDBCtechnology.Thewebsiterealizednetworkmanagementfortourisminformationandcanexecutesomefuctionsincludingtravelinformationrelease,userlogin,userinformationmodification,scenicspotinformationbrowsing,usercommunication,hotelreservationandotherfunctions..Thebasicprocessofdesignandprogressisdescribedinthispaper.Thisarticleisdividedintopreface,thedemandanalysisofthetourismwebsite,theoutlinedesignofthesystem,thedetaileddesignofthewebsiteandthesystemofthetourwebsite.Therealizationprocessofeachfunctionmoduleisintroducedinthisarticle.
Keywords:
tourismwebsite;Mysql;informationcontrol;JSP
论文总页数:
26页
1前言
1.1开发背景
自从我国加快发展的步伐以来,工作之余人们对休闲放松也更加重视起来,因此旅游行业也得到了十分迅速的发展,同时旅游经济和假日经济也成为了人们的热门消费点。
但是,我国旅游业的发展力度还不够大,发展水平也偏低。
很多旅游者对国内的一些名胜景点甚至都没有听说过,还有一些旅游者对某些旅游景点的服务和设施很不满意。
随着人们消费水平的提高旅游行业的发展更加需要快速提高以满足人们的需求。
全国各地也把旅游产业作为经济发展的一个重要支柱,以带动别产业的经济的快速发展。
如何对本地旅游行业宣传以提高本地旅游业的知名度和如何提高旅游行业的整体服务水平以满足旅游者的需求,对各地的经济发展是至关重要的。
在这样的背景下,旅游、互联网、电子商务的迅速融合将成为一种必然的趋势,并且能够创造出很大的价值,将旅游行业与电子商务的结合也是近几年才兴起的,但是发展势头非常强劲。
在这个信息时代电子商务交易模式遍及各个行业。
网络旅游也将推动IT领域内电子商务和互联网的迅速发展,这也会进一步推动旅游行业的发展。
1.2目前旅游行业存在的问题
一方面,很多旅行社在对于信息的整理、分类和保存方面做得还不够好,多数还是采用的传统的纸质书本的方式来保存。
对于少量的信息还能应付,但是信息量一旦变得很大以后,不管是对于整理分类还是保存都是很不方便的,而且消耗的人力物力成本也会随之增大,这种人为过程中,也比较容易疏忽、纰漏或者出错。
这样的方式对于长期保存数据来说不是一个很好的选择。
而且,旅游者获取到这些旅游信息的途径也不是很方便和高效。
而借助计算机技术是一个很明智的选择。
另一方面,很多旅游类广告千篇一律似的宣传方式,既没有突出景区的特点也没有把握好自身的优势。
现如今旅游行业发展火热,各地旅行社的数量与日俱增,加大了旅游行业之间的竞争,但是对于如此众多的旅行社其实际的品质却是参差不齐,旅游者更是无从分别其中的好坏。
很多旅行社为提高自身竞争力,推出各种低价旅游团,以此吸引顾客。
但是对于某些低价旅游团在实际旅途中,旅行社与旅游地的各种商贩勾结,导游以各种名义向顾客推销旅途中的一些不需要的东西并且强行要求顾客购买。
若是有人提出异议,必定会遭到人身攻击,更有甚者不顾游客人身安全将旅客赶下旅游车。
这种现象现在层出不穷,已经屡见不鲜了。
旅游地周围也被不良商家搞得乌烟瘴气,连最基本的服务问题都难以得到保障。
这些事情和现象不仅影响各个旅游景点的声誉还严重阻碍了旅游行业的整体发展,由此也会影响经济的发展。
现在很多旅游者会因为上述原因对旅行社失去最基本的信任,转而选择自助式旅游。
因此,对各地旅游信息的规整显得尤其重要了。
不管是想参团旅游的游客还是准备选择自助式旅游的游客都需要了解旅游目的地及其周围的各种信息,但是仅通过纸质资料获取信息,渠道过于单一,又成了一个新的问题。
这些问题产生的主要原因还是由于对各种信息处理的方式不合适。
如果这些旅游类信息能够被完善、安全、高效的存储,并且能够方便、快速的被旅游者获取,那么问题就能迎刃而解。
现如今,科学技术发达,很多行业都通过计算机和互联网技术将信息存储在虚拟的网络空间中并能高效的对其进行操作。
结合现在社会的发展趋势来看,对于旅游行业来说这样不失为一种好方法。
1.3技术背景
1.3.1Mysql数据库概论
Mysql是网络上一款比较流行的免费小型数据库软件,其数据库类型为关系型数据库。
最初由瑞典的一家公司设计开发,现在也早已被Oracle收购。
由于Mysql是一个开源代码的软件,所以Mysql数据库在网络上也非常的流行,互联网上的各种中小型的网站对Mysql的应用也是相当普遍的。
因为使用Mysql数据库管理数据,那些常用的功能Mysql都提供,更重要的是使用Mysql数据库管理数据其开发成本几乎可以忽略不计,而且Mysql相对其他关系型数据库如Oracle、SQLserver,其体积很小,但是速度快,虽然在功能和规模上不如前两者强大,但是对于一般规模较小的中小型网站来说,Mysql提供的功能已经可以轻松满足开发者的要求了,所以Mysql数据库更受中小型网站的青睐。
1.3.2JSP介绍
Javaserverpages简称JSP,它建立在servlet之上。
JSP的技术特征主要有:
跨平台、分离静态内容和动态内容、可重复使用的组件、预编译、沿用了javaservlet的所有功能等等。
程序员可以应用JSP高效率的创建WEB应用程序,并且使用JSP技术开发的互联网应用程序具有跨平台、安全性高等优点,可在多种操作系统上运行。
2系统需求分析
2.1项目概述
2.1.1系统目标
本系统旨在建设一个信息完善,操作简单,界面美观的旅游网站,主要功能包括如下几项。
1.各种信息的发布,管理员可以在后台发布旅游景点信息供用户浏览,普通用户也可以在用户区发布相关信息并进行交流,不仅可以拓宽用户获取信息的渠道,用户之间的交流也有利于旅客更好的了解旅游景点周边的情况,对自助式旅游是一种很大的帮助。
2.注册与登录,用户可通过网站相关平台进行注册并且登录,如果只是以普通游客的身份进入网站,也能正常浏览网站相关旅游信息,但是网站的某些功能游客是无法正常使用的,比如游客不能使用酒店预订的功能,此功能暂时只对已经注册的用户开放。
3.各类信息浏览,用户无需登录就可以通过本旅游网站浏览各种旅游信息,用户发布的信息,酒店信息等。
4.网上预订酒店,用户通过本旅游网站不仅可以了解到酒店信息,还可以在网上预订自己满意的酒店,游客无需亲自到酒店才能预订,这样一来就减少了游客不必要的麻烦,对于异地旅游者和自助式旅游者来说是很实用的一个功能。
5.BBS功能,可以为广大用户提供交流平台,用户可以通过bbs平台分享自己的旅游经验、旅游信息等,还可以互相讨论了解景点的优劣为自助式旅游制定最优旅游方案,以及发起一些组团旅游信息等。
6.用户信息修改,已经注册的用户可以通过网站的相关模块对自己的信息进行修改,及时更新自己的信息,方便用户之间更好的相互了解。
用户还可以修改自己的登录密码,加强账号安全性。
2.1.2软件环境
对于一个网站系统的实现,只有硬件系统的支持是不够的,还必须要有与系统对应的相关软件配合,系统才能正常运行。
因此,本旅游网站还要求需配置如下其他软件。
系统开发环境:
Windows7
系统开发工具:
MyEclipse、Tomcat、Jdk
数据库工具:
Mysql
系统运行环境:
WindowsXP/7/8/10
2.2系统可行性研究
1.技术可行性
本旅游网站主要采用jsp进行前台界面的设计。
jsp页面由传统的html代码和嵌入到其中的java代码组成,jsp页面中还包含了各种特殊的jsp元素。
当使用jsp技术时,静态内容的部分可以使用xml标记或者html来设计和格式化,动态内容的部分使用jsp标记及javabean或者JavaScript脚本程序来制作。
jsp标记和小脚本程序将由服务器端执行,客户端浏览器接收到的是html页面,这个html页面是服务器端将处理结果与静态部分结合过后的形成的新的html页面。
数据库的管理采用了mysql数据库,mysql体积小、运行速度快并且健壮、易用,对于一般的网站完全可以采用mysql数据库进行数据库管理。
所以,本系统在技术上是可行的。
2.经济可行性
本系统主要使用myeclipse开发工具,mysql数据库,都是可以在网络上找到的免费软件,开发成本几乎可以忽略不计。
当网站投入使用时,旅游者可以通过本网站轻易获取到相关旅游信息及使用网站其他功能,方便了旅游者自助式旅游出行,因此可吸引大量用户加入本网站,以增加本网站的浏览量和数据流量,所以本旅游网站在经济上是可行的。
3.操作可行性
本旅游网站界面简洁,操作方便,也无任何使用限制,使用过程中不需要安装任何其他软件,打开浏览器即可浏览本旅游网站并且可以使用旅游网站相关功能。
因此,本旅游网站在操作上是可行的。
3系统概要设计
3.1系统总体结构设计
本系统采用mvc模式来搭建整个网站的结构。
mvc是model、view、controller的合称,它一种程序设计概念,对于简单程序和复杂程序都能使用mvc模式来开发。
采用mvc模式开发的应用程序被分解为三个独立的部分,即:
模型、视图、控制器。
一个应用程序中被用来完成任务的代码在mvc中即为模型,指的是业务逻辑的代码,这个部分在程序中常常是相对稳定的部分,它会被重复使用。
应用程序中与用户进行交互的页面即为视图,这个部分则是经常改变的。
若是页面需要更新时业务逻辑代码也必须一起做相应改动,或者是需要在不同的模块中实现相同的功能而多次编写业务逻辑代码,既让应用程序的维护变得十分困难又会降低应用程序开发的整体进度,因此使用mvc模式有很多优点,比如当需求改变的时候对相关程序进行改进的时候会更加容易。
mvc模式图如图1所示。
图1mvc模式图
3.1.1系统总体结构图
本旅游旅游网站系统主要分为五个大模块及其子模块,主要完成注册、登录、信息浏览、信息发布、酒店预订等功能,具体如图2所示。
图2系统功能模块总体结构图
3.1.2系统功能模块设计
本旅游网站经过需求分析,将主要功能模块划分为以下几个。
1.用户功能模块
用户功能模块实现的主要功能包括:
用户的注册与登录,以及用户在登录后可以修改密码和个人的信息等。
2.信息浏览模块
信息浏览模块主要实现各类信息的查看,主要包括相关旅游景点信息的查看、酒店信息的查看、论坛信息的查看以及个人信息的查看。
3.后台功能模块
本旅游网站管理员的主要功能包括发布有关的旅游信息,发布酒店信息,对论坛信息进行管理,管理员可以删除普通用户发布的帖子,而普通用户只拥有发布帖子和回复帖子的功能。
4.酒店预订模块
酒店预订功能模块主要是为了方便用户在浏览相关酒店信息后,可以对满意的酒店进行预订。
5.论坛功能模块
此模块用于实现用户之间的交流,用户可以通过该模块发表自己的一些旅游经验和看法,也可以回复和浏览其它用户发表的帖子,能够满足用户与管理员、用户与用户之间的实时互动。
3.2 数据库设计
3.2.1数据库设计概述
建立数据库应用系统的核心问题是,如何把实体模型和与之相对应的需求转换成数据库模型的一个转换过程。
为用户的应用系统提供一个高效数据库系统其实就是数据库设计的主要目标。
建立一个良好的数据库,对于数据库及其相关的操作都会有很大的帮助,数据库设计的好在以后能避免很大不必要的麻烦,节省不少资源和精力。
所以,设计好数据库对数据库性能和一些用于提高数据库性能的方法都有很大的帮助。
数据库设计的关键主要怎样让设计的数据库能合理地存储用户的数据,使用户处理数据变得方便。
3.2.2数据库逻辑结构设计
数据库设计的核心其实就是概念结构的设计。
数据库的逻辑结构与概念结构是独立的,逻辑结构也与所使用的具体的数据库管理系统是独立的。
用户工作环境中所涉及的事务是实体,对实体特征的描述则是属性。
数据库结构的设计图如图3所示。
图3数据库结构设计图
3.2.3数据库的物理结构
所建数据库的名字为travel,数据结构具体如下。
1)管理员信息表的数据结构
列名数据类型是否非空
(管理员ID)idint(11)NOTNULL,
(管理员名称)usernamevarchar(50)NOTNULL,
(管理员密码)userpwdvarchar(20)NOTNULL
2)酒店信息表的数据结构
列名数据类型是否非空
(酒店ID号)lidint(11)NOTNULL,
(酒店名称)t_lvdianNamevarchar(50)NOTNULL,
(酒店描述)t_lvdianMsgvarchar(500)NULL,
(酒店图片)t_picvarchar(50)NULL,
(酒店联系电话)t_phonevarchar(50)NOTNULL,
(酒店地址)t_addressvarchar(50)NULL,
(酒店正常价格)t_pvarchar(50)NULL,
(酒店优惠价格)t_p2char(10)NULL
3)旅游景点信息表的数据结构
列名数据类型是否非空
(景点ID号)idint(11)NOTNULL,
(景点名称)t_placevarchar(50)NULL,
(景点描述)t_msgvarchar(500)NULL,
(景点图片)t_picvarchar(50)NULL,
(景点参考价格)t_pricevarchar(50)NULL
4)用户信息表的数据结构
列名数据类型是否非空
(用户ID号)uidint(11)NOTNULL,
(用户名称)usernamevarchar(30)NOTNULL,
(用户密码)userpwdvarchar(50)NOTNULL,
(用户密码提示)vippasswordmsgvarchar(50)NULL,
(用户出生日期)vipbirthvarchar(50)NULL,
(用户地址)vipaddressvarchar(50)NULL,
(用户喜欢的旅游地)viplikeplacevarchar(50)NULL,
(用户联系方式)vipphonevarchar(50)NULL,
(用户性别)vipsexvarchar(50)NULL
5)订单信息表的数据结构
列名数据类型是否非空
(订单ID号)oidint(10)NOTNULL,
(用户ID号)uidint(10)NOTNULL,
(酒店ID号)lidint(10)NOTNULL
6)发帖记录信息表的数据结构
列名数据类型是否非空
(帖子ID号)idint(11)NOTNULL,
(帖子标题)b_titlevarchar(50)NOTNULL,
(帖子内容)b_msgvarchar(50)NOTNULL,
(发帖人名称)b_usernamevarchar(30)NOTNULL,
(发帖时间)b_timevarchar(50)NULL
7)回复记录信息表的数据结构
列名数据类型是否非空
(回复信息ID号)idint(11)NOTNULL,
(回复人名称)b_usernamevarchar(30)NOTNULL,
(回复内容)b_msgvarchar(50)NOTNULL,
(回复时间)b_timevarchar(50)NULL,
(回复帖子的名称)b_titlevarchar(50)NOTNULL
3.2.4数据库的完整性和安全性
数据库的完整性是指数据应该在逻辑上保持一致性、有效性、正确性和相容性,例如利用主键、外键约束等方法。
通常会利用数据库管理系统或者是一些应用程序来实习数据库完整性约束。
系统中定义了表中各个字段属性及约束条件,有助于实现完整性。
数据库的安全性就是指对数据库中数据的各种保护措施,保护数据免受破坏、更改或泄漏。
数据库系统中存放着大量的数据,这些数据每天被不同的用户操作使用,这些数据对用户和整个系统来说都是很重要的。
所以,对数据的保护就显得十分重要,即为对系统的安全保护措施,安全保护措施可以保护数据库防止各种误操作和恶意操作。
在这个系统中,只用管理员才能掌握某些权限。
当用户登陆,需要输入用户名及密码,并选择登陆身份,系统判断当前登陆的用户是普通用户还是管理员,同时授予不同的权限,以此防止用户误操作,提高系统的安全性。
4旅游网站详细设计
4.1项目结构
项目文件夹目录结构如图4所示。
图4项目文件夹结构
4.2数据库的连接
本系统使用的是Mysql数据库,在连接的过程中需要用到JDBC驱动程序,并且需要同时在myeclipse开发工具中做相应配置,下面将具体介绍如何实现数据库的连接。
1.首先在myeclipse中创建数据库连接,同时需要配置mysql数据库的一些相关信息,为连接数据库做准备。
具体配置如图5所示。
图5创建数据库连接
2.创建数据库连接类DBHlper。
publicclassDBHelper{
privatestaticDBHelperdb=null;
privateDBHelper(){
}
publicstaticDBHelpergetInstance(){
if(db==null){
db=newDBHelper();
}
returndb;
}
publicstaticConnectiongetConnection(){
Connectionconn=null;
try{
Class.forName("com.mysql.jdbc.Driver");conn=DriverManager.getConnection("jdbc:
my