基于Struts2旅游信息管理系统的设计与实现毕业设计论文.docx
《基于Struts2旅游信息管理系统的设计与实现毕业设计论文.docx》由会员分享,可在线阅读,更多相关《基于Struts2旅游信息管理系统的设计与实现毕业设计论文.docx(35页珍藏版)》请在冰豆网上搜索。
基于Struts2旅游信息管理系统的设计与实现毕业设计论文
基于Struts2旅游信息管理系统的设计与实现
教学学院数学与计算机科学学院
目 录
内容摘要:
本文用Struts2框架编写旅游信息管理系统,采用面向对象的编程方法。
开发主要包括后台管理系统以及前端应用程序的开发两个方面,实现了旅游信息管理的自动化和信息化。
整个系统实现了对个人信息和系统管理员对所有用户以及信息的的管理,对旅游景点信息和游客旅游景点需求信息的记录,并及时为其提供准确信息。
其主要内容包括如下模块:
系统管理员对系统的管理,旅客对景点信息的查询,以及景点商家发布景点信息。
关键词:
HTML,Mysql,旅游信息管理系统,Struts2,Servlet。
Abstract:
Inthispaper,usingStruts2frameworkforthepreparationoftourismmanagementinformationsystem,usestheobject-orientedprogrammingmethod.Thedevelopmentoftwoaspectsofdevelopmentmainlyincludesthebackstagemanagementsystemaswellasthefront-endapplication,realizedtheautomationandinformationizationoftourisminformationmanagement.Thewholesystemfromtherequirementsofsimpleoperation,friendlyinterface,flexible,practical,safe,thedesignandimplementationofpersonalinformationandsystemadministratorforallusersandmanagementinformation,touristattractionsandtouristattractionsinformationdemandinformationrecords,andprovidetimelyandaccurateinformation.Itsmaincontentincludesthefollowingmodules:
systemadministratorofthesystemmanagement,passengerquerytothescenicspotinformation,andbusinessinformationpublishingattractionsattractions.
Keywords:
HTML,Mysql,Touristinformationmanagementsystem,Struts2,Servlet.
1引言
1.1旅游信息管理系统开发背景
旅游作为一个新兴的产业近年来取得了迅速的发展,旅行社如雨后春笋遍布全国各省市、目前旅游行业普遍存在着企业规模小,管理不规范等弱点。
因为旅游涉及吃、住、行、游、购、娱等诸多要素,而且这些要素又分散在不同的地域中,一个人不可能全面掌握所有的信息。
一旦掌握某方面信息的人离开企业,就会对企业的经营造成负面影响。
旅游信息管理系统可以把各种旅游资源分类存储管理通过网络实现资源共享,不仅方便快捷,而且不会因为人员流动影响企业的经营,是旅行社在激烈的市场竞争中的坚强后盾。
因此,本文就详细的设计了一个旅游信息管理系统,把旅游中的一些相关的详细信息囊括其中,尽量使整个管理系统层次鲜明,概括清楚。
1.2旅游信息管理系统现状
随着信息科技和互联网的飞跃发展,当今社会也步入数字化生存的时代,每个企业的发展已经离不开互联网了,各种信息和数据越来越膨胀,潜移默化的影响着我们的生活。
计算机基于语言基础融合了强大的数据库开发能力,是一种非常好的数据开发工具。
然而,旅游信息管理是旅游公司日常管理中的一项重要工作,设计一个好的系统将直接影响到旅游公司日常工作的管理和分配。
旅游信息管理系统主要完成人员基本信息的管理,旅游团的管理及查询,预定信息的管理及查询,景点的管理和查询,客户结算等。
旅游管理软件应用将为旅游业做出巨大的贡献,因此对旅游行业的多元化信息进行有效的管理工作,也成为旅游行业中的重中之重,所有开发出一个好的旅游信息管理系统也是迫在眉睫。
1.3系统开发意义
通过本系统,能够帮助社会利用计算机,快捷方便的对旅游景点以及旅游者的相关信息进行管理、输入、输出、查找的所需操作。
本软件适用于旅游业,对旅行者的相关信息可以随时输入、输出、查找以及修改。
旅游信息管理系统利用可靠的技术实现游客信息管理的自动化、系统化、标准化,为旅行社针对客户信息制定出的经营结构构建了一个高效的信息管理系统。
旅行社使用旅游信息管理系统给用户带来的好处如下:
(1)系统将为整个客户的资源体系,将传统的营业厅服务体系得到的数据,融入到管理、人力资源等部门,实现运营效率的全面提高;
(2)系统将原本分散的服务、营销、管理人员组成一个围绕客户需求的强大数据体系,同时提供一个各部门共享的信息平台;
(3)系统将打造核心竞争力,系统能优化企业的组织体系和职能结构,形成高效运行的管理系统和信息系统,为打造企业核心竞争力提供有力的保障,为企业扩展生存和发展空间。
2系统分析
要设计开发一个管理系统,首先应该进行各种系统分析,如系统的可行性分析、系统的需求分析等,这样才能令设计出的网站满足用户的各种需求。
下面就对房屋中介信息管理系统的设计进行各项系统分析。
2.1需求分析
一个功能完备、操作简便的信息管理系统不仅能够有效地减少旅游信息工作人员的工作量,而且对于旅游信息的决策者和管理者来说都至关重要。
一个旅游信息管理系统应能够为用户提供丰富的信息和简便的查询手段。
但一直以来人们使用传统的人工方式管理文件档案、统计和查询数据,这样的管理方式存在着很多缺点,如:
效率低、保密性差,人工的浪费;另外时间一长,会产生大量的文件和数据,这对于人们查找、更新和维护都带来了很多困难。
随着科学技术的不断发展,计算机技术的日渐成熟,它的强大功能已被人们深刻认识,它已进入人类社会的各个领域而且发挥着来越重要的作用。
用计算机对旅游信息进行管理,比手工管理有许多的优点。
例如:
检索迅速、查询方便、效率高、可靠性好、存储量大、保密性好、寿命长、成本低等。
由于这些优点,极大地提升信息管理的效率。
因此,开发这样一套管理软件是很有必要的一件事情,我通过自己所学的知识以及通过大量书籍的翻阅、网站的查阅,开发了一个旅游信息管理系统。
系统需要有以下功能:
(1)因为操作人员的计算机知识普遍较差,要求有良好的人机界面;
(2)因为该系统的使用对象多,要求有较好的权限管理;
(3)要求原始数据修改简单方便,支持多条件修改;
(4)方便的数据查询,支持多条件查询;
(5)在对应的权限下,删除数据方便简单,数据稳定性好;
(6)数据计算自动完成,尽可能减少人工干预。
2.2可行性分析
可行性分析(FeasibilityAnalysis)也称为可行性研究,是在系统需求调查的基础上,新系统的开发是否有必要性和可行性,对新系统的开发从技术、经济、社会等各个方面进行分析和研究,从而避免投资失败,以此保证新系统的开发成功。
可行性研究的目的就是付出最小的代价在尽可能短的时间内确定问题能否解决。
本人通过了解旅游工作需要,对旅游信息管理系统开发的可行性进行了分析,包括以下几个方面的内容。
2.2.1经济可行性分析
本系统开发要耗去一定的时间,而所用的开发工具和软件基本是免费的。
由于系统能够在未来一段时期内稳定地发挥作用,开发旅游信息管理系统,对于管理企业的人力和财力都有很大的帮助。
由此可见,开发此系统在经济上是完全可行的。
2.2.2操作可行性分析
如今的计算机已经进入各个家庭,计算机技术不断普及,硬件成本不断的下降,计算机价格不断降低。
我的这套系统是利用自己的计算机加编程软件来开发的,开发出来的系统具有友好的用户界面、有良好的安全性设置等,可以使用户可以很快地掌握系统的操作方法,因此在操作上是可行的。
2.2.3技术可行性分析
从目前IT业内使用比较广泛的数据库开发、管理软件来看,使用比较简单的中小型数据库,HTML以及Struts2的结合无疑是在实际应用中较为成功的一种解决方案。
为用户提供了业界软件开发一直坚持的非常友好、操作简单的用户界面、完善强大的数据库操作功能和简洁明了的数据库接口。
所以技术实行起来相对会容易。
2.2.4可行性综合分析
利用计算机实现旅游信息管理势在必行。
对于中介管理企业来说,利用计算机来完成企业高效率的旅游信息管理的日常事务,是适应现代企业制度要求、推动企业由劳动型管理转变为科学化、规范化的必要条件;由于旅游信息管理是一件琐碎、复杂而又十分细致的工作,旅游景点的基本资料管理,游客资料的管理等都是不允许出错的,如果用手工操作,须由手工填制大量的表格,这会耗费人工的大量的时间和精力,用计算机进行旅游信息的管理,不但能够保证各项信息准确无误、同时计算机具有手工管理所无法比拟的优点。
例如:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点都能极大地提升中介管理的效率,这也是企业进行科学化、正规化管理,与世界接轨的重要条件。
开发本系统就是为了解决管理企业在旅游信息管理中的一些不规范,使旅游信息的管理向着规范化、简单化、有效化的方向发展。
2.3系统开发工具及工作平台
2.3.1html
超文本标记语言,是一种用来表示设计网页的标记语言,不需要编译,直接由浏览器来解释执行,用该语言编写的文件,以.html或.htm为后缀。
2.3.2MySQL数据库
MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。
MySQL是开放源代码的,因此任何人都可以在GeneralPublicLicense的许可下下载并根据个性化的需要对其进行修改。
MySQL因为其速度、可靠性和适应性而备受关注。
大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。
2.3.3Struts2框架
Struts2不是单纯的Struts的版本升级,他以WebWork优秀的设计思想为核心,Struts2吸收了Struts的部分优点,建立了一个兼容WebWork和Struts的MVC框架,Struts2的目标是希望可以让原来使用Struts、WebWork的开发人员,都可以平稳过渡到使用Struts2框架。
Struts2框架的大致处理流程如下:
(1)浏览器发送请求,例如请求/mypage.action等;
(2)核心控制器FilterDispatcher根据请求决定调用合适的Action;
(3)WebWork的拦截器链自动对请求应用通用功能,例如workflow、validation或文件上传等功能;
(4)回调Action的execute方法,该execute方法先获取用户请求参数,然后执行某种数据库操作,既可以是将数据保存到数据库,也可以从数据库中检索信息;
(5)Action的execute方法处理结果信息将被输出到浏览器中,可以是HTML页面、图像,也可以是PDF文档或者其他文档。
3网站总体业务流程设计
本系统分为两个主要流程:
(1)用户信息管理:
旅客和旅游景点商家登陆到系统后,通过点击个人信息管理链接,进入个人信息管理页面。
之后可以选择个人信息、景点信息查询、个人信息的更改、旅客和景点商家在线互动、景点商家发布旅游信息等功能。
(2)管理员管理系统:
系统管理员登陆到系统后,点击系统管理,进入系统管理页面。
可以选择类别管理对旅客以及旅游景点商家进行增删改查进行系统维护。
3.1项目规划
旅游信息管理系统的目的是为了打破传统旅游信息管理时间空间的局限,便于旅游信息管理人员随时查找社区的旅游景点信息以及游客需求信息。
通过旅游信息管理系统,实现旅游景点的管理、游客信息管理以及管理员对系统所有用户的管理等功能,管理人员也可借助此平台,添加信息、信息查询、信息导出等功能。
3.2系统功能结构图
系统功能结构层次设计主要是介绍系统功能的大体层次结构,让编码人员详细了解系统的功能结构层次。
图3-1系统整体架构图
通过图3-1我们清楚的看到本系统主要分为前台操作和后台管理,前台操作按不同角色进行不同的操作,以实现一个完善的旅游信息管理。
3.2.1系统主要功能
(1)在登录页面对应的地方输入用户名、密码。
确认无误后即可登录,身份不同进入的界面也将不同。
用户可以通过自己的登录用户名和密码进入系统页面,而管理员可以通过自己的用户名和密码进入管理员页面。
(2)信息发布界面:
在信息发布界面,用户可以发布景点信息。
(3)修改个人信息功能:
用户信息在注册时填写错误,则可以通过此功能进行修改。
(4)查询信息功能:
在系统页面中,用户可以查询景点信息、其他景点等信息。
3.2.2用户类型
系统用户分为三类:
游客用户、景点用户和管理员用户。
(1)游客用户只能浏览已经发布的信息,但不能发布信息。
(2)景点用户可以进行景点信息的发布。
(3)管理员用户:
作为管理员用户,可以对自己和他人的信息进行浏览、查询以及删除等管理。
同时参与了发布信息、管理系统、管理用户、管理用户的信息等操作。
3.3数据库设计
3.3.1数据描述
本系统的实体有:
管理员实体,旅客实体,旅游景点实体、景点商家实体等实体。
表3-1旅客信息表
字段名称
数据类型
说明
备注
uid
int
uid
主键,自动编号
rid
int
rid
不能为空,唯一
userName
varchar(20)
用户真实姓
不能为空
username
varchar(20)
用户名
不能为空
password
varchar(30)
密码
不能为空
sex
varchar(6)
性别
Male/Female
userBirthday
datetime
出生日期
允许为空
userEmail
varchar(30)
用户邮箱
不能为空,唯一
address
varchar(40)
地址
允许为空
mobilephone
varchar(12)
联系方式
userdz
varchar2(20)
所属景点
图3-2旅客实体E-R图
表3-2景点商家信息表
字段名称
数据类型
说明
备注
did
int
uid
主键,自动编号
rid
int
rid
不能为空,唯一
userName
varchar(20)
用户真实姓
不能为空
username
varchar(20)
用户名
不能为空
password
varchar(30)
密码
不能为空
sex
varchar(6)
性别
Male/Female
did
int
所属景点id
允许为空
userEmail
varchar(30)
用户邮箱
不能为空,唯一
userLevel
tinyint
用户等级
不能为空,分0和1两级
address
varchar(40)
地址
允许为空
mobilephone
varchar(12)
联系方式
userdz
varchar2(20)
所属景点
图3-3景点商家实体E_R图
表3-3景点信息表
字段名称
数据类型
说明
备注
mid
int
mid
主键,自动编号
fromuid
varchar(20)
来件
不能为空,唯一
touid
varchar(20)
发送方
不能为空
title
varchar(30)
文件
不能为空
content
Varchar(40)
包含
不能为空
senddate
Date
发送时间
Male/Female
isread
int
已读
允许为空
issend
int
发送箱
不能为空,唯一
toname
varchar(20)
发送人
不能为空,分0和1两级
fromname
varchar(20)
来件人
允许为空
todelete
varchar(20)
删除已发
fromdelete
varchar(20)
删除已收
图3-4景点信息E-R图
表3-4管理员表
字段名称
数据类型
说明
备注
uid
int
uid
主键,自动编号
rid
int
rid
不能为空,唯一
username
varchar(50)
用户名
不能为空
password
varchar(30)
密码
不能为空
sex
varchar(6)
性别
Male/Female
userBirthday
datetime
出生日期
允许为空
userEmail
varchar(30)
用户邮箱
不能为空,唯一
mobilephone
varchar(12)
联系方式
图3-5管理员E-R图
3.3.2逻辑结构设计
根据系统的功能描述,设计要用的数据表。
因为这些表之间相互关联,存储着系统的相关数据,所以在设计数据表的过程中,要求设计一个表只存储一个实体或对象的相关信息,不同实体存储在不同的表中。
对于不同的对象或者实体,如果还可以细分,则可以根据当前系统的需求和未来扩展的需要,对实体或对象进行表结构的建立;扩充信息和动态变化的信息要分开放在不同的表里等。
本系统需要设计的数据库表如表3-1所示。
图3-6系统整体E-R图
4系统主要功能模块详细设计
4.1系统整体主要流程架构
图4-1
从图4-1可以很清楚的看到本旅游信息管理系统的整体流程,从登陆界面开始,按照不同角色不同的权限进行登陆验证,验证成功进入各自的登陆主页:
普通旅客,景点商家,系统管理员。
否则回到登陆界面从新登陆。
随后进入各自的管理模块,普通旅客可以进行个人信息的修改查看,以及对景点商家的景点信息等的查看,最后是游客和景点商家的互动;景点商家登陆之后可以进行景点信息的发布修改,以及查阅其他景点信息,其次是和旅游的一个信息互动;系统管理员登陆后,可以进行景点管理,系统会有权限的管理,以及对本系统所有会员的管理。
4.2主要功能模块设计
下面详细介绍主要功能模块的具体设计思路、实现的功能及相应的程序页面。
4.2.1建立数据库的连接
数据库系统往往是一个大型WEB应用程序的核心。
同其他WEB应用程序的编写方法相比,强大的数据库访问能力,简单一致的数据库访问方式正是JSP的突出优点。
publicstaticConnectiongetConnection()throwsException{
Connectionconn=null;
try{
Class.forName("com.mysql.jdbc.Driver");
conn=DriverManager.getConnection(
"jdbc:
mysql:
//localhost:
3306/ly"
+"?
useUnicode=true&characterEncoding=utf8",
"root","1234");
}catch(Exceptione){
e.printStackTrace();
throwe;
}
returnconn;
}
4.2.2用户登录
图4-2用户名不能为空
通过这个验证来提示登陆用户用户名不能为空,为空则返回登陆页面,否则进入对应的登陆首页。
图4-3密码不能为空
通过这个验证来提示登陆用户密码不能为空,为空则返回登陆页面,否则进入对应的登陆首页。
图4-4登陆界面包括登陆验证的功能模块图
4.2.3普通旅客管理
图4-5普通旅客登陆模块
普通旅客登陆可以进行会议本人信息的操作,旅客/商家信息管理,旅客/商家在线互动。
图4-6普通旅客个人信息修改
图4-7会员个人信息修改
通过这个功能模块,会员可以进行本人的信息修改实现信息的更新。
图4-8会员对景点信息的查询
图4-9会员对景点信息的查询模块
通过这个模块登陆进来可以实现旅客对景点信息的一个查阅功能。
4.2.4景点商家管理
图4-10景点商家登陆模块
景点商家登陆模块,景点商家登陆以后可以进行自己景点信息的修改,以及查阅其他景点信息,同时还可以进行旅客/商家的互动。
图4-11景点信息修改
通过这个模块,可以实现景点信息的更新发布,以便于旅客查阅到最新的旅游景点信息。
图4-12景点信息修改
4.2.5旅客/景点商家的互动
图4-13旅客景点商家的互动
图4-14旅客景点商家的互动模块
通过这个模块,可以实现一个旅客和景点商家在线互动的功能,通过互相之间的信息的发送,来达到相互之间的远程交流。
4.2.6系统管理员管理
图4-15系统管理员管理
图4-16系统管理员管理模块
通过这个模块,实现了系统管理员对整个系统的一个管理功能,只要是管理员对旅游景点的管理,以及系统角色权限的设置,系统所有会员的管理功能。
5系统测试
5.1测试原则
我们很清楚的知道,软件测试的基本原则是站在用户的角度出发,对产品进行全面测试,并跟踪和分析产品中的问题,对不足之处提出质疑和改进意见。
具体测试原则有如下几点:
第一、软件测试计划是做好软件测试工作的前提,进行实际测试之前,我们需要应制定良好的、切实可行的测试计划并严格执行,特别要确定我们的测试策略和测试目标;
第二、在用户需求之上软件测试的目标,是测试的标准要建立的基础。
那就是确认产品是否满足客户的需求和验证产品的协调一致性,所以测试人员要一直都要用用户的眼光来看问题,去判断软件缺点的各种影响,那些导致程序无法满足用户需求的缺陷是系统中最大的错误;
第三、不可将测试用例置之度外,排除随意性,特别是对于做了修改之后的程序进行重新测试时,如不严格执行测试用例,将有可能忽略由修改错误而引起的大量的新错误。
所以,回归测试的关联性也应引起充分的注意,有相当一部分最终发现的错误是在早期测试结果中遗漏的。
5.2测试用例
完成了功能测试等这一系列的测试之后,看到系统的设计整体上都符合要求,具体的测试用例如以下表所示。
表5-1旅客/景点商家登陆修改界面测试用例
测试用例
场景
测试步骤
预期结果
实际结果
TC1
用户登录
打开系统,点击