《旅游网的设计与实现》
摘 要
随着旅游行业的不断发展,各家旅游行业之间的竞争日益激烈,旅游部门所需的信息量越来越大,业务操作中涉及的各种线路情况、客户情况以及旅游协作部门的情况越来越复杂多变。而除了一些个别地区已采用了的旅游网站,一般通常是以原始的手工方式处理/交流信息。但是工作人员若仅靠手工方式处理大量资料,很可能带来出错率的增长以及大量资源的浪费和闲置等问题。因此,只有加强对旅游信息资源的整合、统一管理,才能使旅游部门运行更加合理、高效地运转。
本文是根据旅游行业的这种现状,提出解决问题的一个可行性方法:采用现代化统一的计算机网络系统,实现了旅游管理的网络化,各类信息有序地进行存储。对于普通用户,可以实现信息浏览,对于有需求的用户经过权限认证后可以进行信息浏览,在线预定,论坛等功能的使用。实现了各种业务系统的数据集成和信息集成,对旅行社,酒店各类信息、资源进行协同集中管理。本文论述了桂林旅游网站系统的分析、设计及开发的整体过程,介绍了网站的设计目标,系统需求和总体设计方案,较详细的论述了系统如何详细设计和实现。利用了Eclipse+MyEclipse、Dreamweaver 等开发工具,选择Tomcat 作为Web 服务器,系统采用Oracle 数据库。系统主要完成了用户注册、酒店查询与预定、旅游路线查询、机票查询与预定、桂林民俗介绍、旅游景点查询、在线留言等功能, 为管理员提供了酒店管理、各种新闻管理、订单处理、用户管理等功能。在设计方面,本系统采用B/S三层结构,在MVC 设计模式下,使用了Struts 框架,用JSP 技术进行动态页面的设计,并运用iBatis 对底层数据访问封装,将业务逻辑和数据访问逻辑分离,提供可维护性。
关键词:旅游网;系统与实现;Struts ;iBatis
Abstract
With the continuous development of tourism industry, tourism industry, the increasingly fierce competition between tourism department for information is more and more big, the operation of all sorts of line, customers and the department of tourism and complicated and changeable situation. But except for some specific area has adopted the tourist sites, usually in the original manual processing methods/information exchange. But if a staff of only by manual processing methods, is likely to have a growth rate and the waste of resources and idle. Therefore, only to strengthen the integration of tourism information resources, unified management, ability makes tourism department operation more reasonable and efficient operation.
This article is based on the status quo of tourism industry, and puts forward a feasible method to solve the problem of unity, adopts the modern computer network system, realized the tourism management network, all kinds of information stored in an orderly manner. For ordinar y users can browse information, to the needs of user access authentication can pass information to browse, online booking, BBS functions. The realization of the system of business and information integration, data integration for all kinds of information, travel and hotels for collaborative resource management. This paper discusses the system of guilin's tourism site analysis, design and development of the whole process, introduces the design goal, the website system demand and the overall design scheme, detail how the system design and implementation details. Using the Eclipse MyEclipse + development tool, Dreamweaver, such as a Web server, choose Tomcat Oracle database system. System mainly completed user registration, hotel reservation, and inquires tourist routes, ticket booking and inquires query, guilin custom, tourist attractions and online query message and so on the function, the administrator provides hotel management, various news management, order processing, user management, etc. In the design, t he system adopts B/S structure in three layers, design mode, using MVC framework, using the Struts techniques JSP page design, dynamic and iBatis use of data access layer encapsulation, business logic and data access to logical separation, provide the maintainability.
Key words: Information System Developing; B/S; Dynamic website
目 录
摘 要 ..................................... ..................... I Abstract .......................................................... II
第1章 绪论 ....................................................... 1
1.1 课题背景 .................................................... 1
1.2 目的和意义 .................................................. 1
1.3 系统设计思想 ................................................ 2
1.4 系统开发环境 ................................................ 2
1.4.1 B/S结构的数据库访问模式 ............................... 2
1.4.2 MyEclipse 简介 ......................................... 2
1.4.3 Oracle 数据库简介 ....................................... 2
1.5 本文的结构 .................................................. 3
第2章 可行性分析 ................................................. 4
2.1 经济可行性 .................................................. 4
2.2 技术可行性 .................................................. 5
2.3 操作可行性 .................................................. 5
2.4 业务流程图 .................................................. 5
第3章 需求分析 ................................................... 7
3.1 旅游网站的规划 .............................................. 7
3.2 旅游网站的需求分析 . ......................................... 7
3.2.1 数据流图 ................................................ 8
3.2.2 数据字典 ................................................ 8
第4章 总体设计 .................................................. 12
4.1 系统模块总体设计 ........................................... 12
4.2 数据库设计 ................................................. 12
4.2.1 数据分析 ............................................... 12
4.3 数据库的详细设计 ........................................... 13
4.3.1 数据库的E-R 图的设计 . .................................. 13
4.3.2 数据表的设计 ........................................... 17
第5章 详细设计与实现 ............................................ 23
5.1 系统运行平台设置 ........................................... 23
5.2 网站主界面设计 ............................................. 23
5.3 用户注册与登录页面设计与实现 .............................. 24
5.3.1 用户注册页面的设计与实现 .............................. 24
5.3.2 用户登录页面的设计与实现 .............................. 26
5.4 酒店预订管理页面的设计与实现 .............................. 27
5.5 线路预订的设计与实现 . ...................................... 28
5.6 机票预订的设计与实现 . ...................................... 29
第6章 软件测试 .................................................. 32
6.1 测试的基本概念 ............................................. 32
6.2 测试的任务和目的 ........................................... 32
6.3 系统整体测试步骤 ........................................... 32
6.4 本系统测试 ................................................. 32
6.4.1 用户登录注册模块测试 . .................................. 32
6.4.2 酒店预订测试 ........................................... 34
6.4.3 管理员模块测试 . ........................................ 34
结 论 ......................................................... 36
致 谢 ......................................................... 37
参考文献 ......................................................... 38
第1章 绪论
1.1 课题背景
十几年来计算机和计算机网络的应用普及,网上购物不断被赋予新的含义。网上购物被认为是通过信息技术将企业、用户、供应商及其它商贸活动涉及的职能机构结合起来的应用,是完成信息流、物流和资金流转移的一种行之有效的方法。随着Internet 的普及以及WWW 服务的提供,可以声、文、图并茂的方式体现商品的特征,并尽可能地便利用户。Internet 潜在的、对其他产业的影响,使得网上购物在国内外再掀热潮,网上购物亦被列为未来十大IT 主导技术之一,迎接新的“网上购物时代”成为人们讨论的主题。
改革开放以来,我国的旅游业有了非常迅速的发展,但是比较而言,我国国内旅游业发展的广度深度都远远不能适应经济发展和人民生活水平提高的需要。随着市场经济的发展和人民收入水平的进一步提高,人民对旅游消费的需求将进一步上升,国内旅游业在国民经济中的地位和作用越来越重要。
但我国旅游产业仍然基础薄弱,管理手段滞后,信息化程度低,企业效益较差。旅游行政管理部门存在管理方式落后,缺乏信息化管理手段,信息沟通渠道不通畅等问题,面对困难和挑战,我国旅游业必须转变观念,创新思维,以信息化建设为突破口和新手段,整合各种资源,从而实现整个行业的新跨越。加强旅游信息化建设,可以提高各级管理部门的工作效率和管理水平,精简办事程序,降低工作成本,加大宣传力度,加快信息传播速度,提高信息实效性;另一方面可以通过开展电子商务,满足游客的个性化需求,提高旅游服务质量,改变旅游企业传统经营模式,降低成本,增加效益,从而提高整个旅游产业素质,旅游实现信息化,将会进一步壮大旅游支柱产业,提升旅游产业整体信息化水平,优化产业结构和资源配置,完善产业链,进而带动众多相关产业发展,拉动内需,扩大就业,增加外汇收入,对经济发展起到积极的推动作用。
目前,我国的一些旅游部门在信息化方面做的工作和其投入较少,对自身的发展起到了制约作用,可以通过建立旅游网站来宣传本地的风土人情,对信息进行网络化、信息化管理,提高自身竞争能力。
1.2 目的和意义
旅游业是中国的一大产业,也是向世界展示中国的途径之一,国内著名的旅游城市很多,它们丰富、独特的自然人文资源和独具的特产也为旅游业的发展奠定了坚实的基础,但它还有一些不足,等待加强,如:政策、管理体制力度有待加强,市场狭窄、发展不均衡,规模小等。
面对困难和挑战,我们需要转变观念,创新思维,加强对旅游部门的整合、统一管理,使之更加合理、高效运转。
1.3 系统设计思想
在众多网络开发技术中,HTML 是一种重要的基本开发技术,而Jsp 技术是当前相当热门,它可以进行复杂的数据库操作、很强的交互性以及方便用户控制管理。
该旅游网站正是当今技术发展的产物,它是一套用Java 及其相关技术开发的能在网上进行的访问的旅游网页。本文介绍了旅游网站的国内外现状和存在的问题,以及设计这个旅游网的目的与意义
1.4 系统开发环境
1.4.1 B/S结构的数据库访问模式
B/S体系结构如图1-1所示。
图1-1 B/S三级结构组成
在B/S体系结构系统中,用户通过浏览器向分布在网络上的许多服务器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。如果开发商要升级版本,也是很方便的。 不用像C/S结构体系那样,要考虑到语言和兼容性等问题。
1.4.2 MyEclipse 简介
MyEclipse 是一个专门为Eclipse 设计的商业插件和开源插件的完美集合。MyEclipse 为Eclipse 提供了一个大量私有和开源的Java 工具的集合,很大程度上解决了各种开源工具的不一致和缺点问题,并大大提高了Java 和JSP 应用开发的效率。新版本的MyEclipse 提供了AJAX 、Struts Development 、Hibernate Tools、Spring IDE Integration等功能。
1.4.3 Oracle 数据库简介
Oracle Database ,又名Oracle RDBMS ,或简称Oracle 。Oracle 是最受欢迎的数据库管理系统,它由Oracle 公司开发、发布和支持。Oracle 数据库的体系结构包括物理存储结构和逻辑存储结构。由于它们是相分离的,所以在管理数据的物理存储结构时并不会影响对逻辑存储结构的存取。从计算机可以很好的处理大量的数据以来,数据库管理系统就在计算机处理中和独立应用程序或其他部分应用程序一样扮演着一个重要的角色。
1.5 本文的结构
本文介绍了旅游网站的设计与开发,主要包括对该系统需求的分析,各功能模块的设计划分,数据库的设计与实现,及系统功能的实现与测试。
本文共6章,按如下方式组织:
第1章介绍了旅游网站的课题背景、目的意义和系统的设计思想,以及系统开发所涉及到的环境等。
第2章主要针对旅游网站进行可行性分析,分析该网站是否有开发的必要性和可行性。并根据调研结果画出旅游网站的业务流程图。
第3章主要是对旅游网站进行需求分析,规划系统所要拥有的功能。根据旅游网站的需求分析画出数据流图。
第4章实现网站的总体设计,其中包括系统模块的总体设计、数据库设计、数据库的详细设计。
第5章对系统进行详细设计,系统运行平台设置、网站主界面设计和用户其他界面的设计与实现。
第6章测试旅游网站是否存在漏洞,并针对此点讲述了测试的基本概念、测试的任务和目的、系统整体测试的步骤以及一些内部功能的测试。
第2章 可行性分析
2.1 经济可行性
由于Oracle 数据库和Tomcat 服务器都是开源的免费的开发学习工具,而且,本系统使用灵活方便,所需的开发人员不多,技术也不是很复杂,开发周期较短,因此开发成本较低。市场前景非常看好,所以说经济方面可行。
1. 系统的初期投资
系统的初期投资如表2-1所示。
2. 货币的时间价值
系统货币的时间价值如表2-2所示。
表2-2 旅游网站的时间价值
3. 投资回收期
引入移动计费系统两年后,可以节省1.86万元,比最初投资还少0.14万元。但第三年可以节省0.864万元。
即:0.14/0.864=0.162 2+0.162=2.162
故引入本系统后,投资回收期为2.162年。
4. 纯收入
3.546-1.87=1.676 (万元)
故引入本系统后,纯收入为1.676万元。
经过以上分析,移动计费系统的开发是可行的。
2.2 技术可行性
本系统采用的是JSP 、Struts 、iBatis 和Oracle 开发,Windows XP Professional 操作系统,用Dreamweaver 进行前台网页界面设计、采用iBatis 方式与后台数据库进行连接,完成数据的添加、修改、删除、查询等功能。iBatis 简便实用,不像JDBC 那样繁琐又比Hibearnate 易于理解,以及目前的广泛实际应用,因此使用JSP 、Struts 、iBatis 、Oracle 是开发轻平台的最佳组合从而说明本系统在技术方面可行。
2.3 操作可行性
本网站系统的页面设计清晰友好,操作简单,功能齐全,使用方便,用户无须学习即可使用,因此使用方面可行。
2.4 业务流程图
以目前在Internet 上旅游信息平台的运营模式,分析设计并实现一个旅游网站信息的平台。用软件工程设计的思想和步骤进行设计,撰写相关文档。课题目标是网站操作简单,清晰友好,功能齐全,使用方便,系统响应快,数据稳定,网站管理系统的合理规范。包括以下几大模块:
(1) 景点/景区模块
(2) 图片管理模块
(3) 会员模块
(4) 预定模块
(5) 注册模块
主要业务流程如图2-1所示。
图2-1 旅游网站业务流程图
第3章 需求分析
3.1 旅游网站的规划
该旅游网站系统在总体上可分为前台用户和后台管理两个部分。前台主要是实现一些提供给用户的使用功能,包括酒店、旅游路线、民俗等方面的相关信息的检索,并提供一些酒店预订、票务预订等方面的便民服务;后台实现的是各种相关信息数据的处理和维护。
3.2 旅游网站的需求分析
该旅游网站主要包括以下几个模块: 1. 新闻发布模块
实现对所发布的新闻进行检索,能浏览网站所发布的所有新闻;
管理员可以对新闻进行添加,删除和修改功能; 2. 景点/景区模块
实现对所发布的景点/景区进行检索,能浏览网站所发布的所有景点/景区;
管理员可以对景点/景区进行添加,删除和修改功能; 3. 图片管理模块
实现对所发布的图片进行检索,在网站上显示和浏览所发布的所有图片;
管理员可以对图片进行添加,删除和修改功能; 4. 会员模块
注册的会员可以浏览信息,预定线路、酒店和票务,可以再论坛发帖和留言;
5. 预定模块
实现对所有的旅行线路、酒店信息和票务信息进行检索,能浏览网站所发布的相关信息;
会员可以在个人面板里实现在线预定旅行线路、在线预定酒店和在线预订票务功能;
管理员可在后台查阅到预定者的信息; 6. 注册模块
普通用户可以浏览信息,但对于预定和论坛的发布需要用户注册会员才可以实现;
管理员可以对用户进行查询,删除的功能。
3.2.1 数据流图
(1)顶层数据流图如图3-1所示:
用户登录或注册信息
反馈登录状态
反馈登陆或注册状态 管理员登录信息
图3-1 顶层数据流图
(2)第二层数据流图如图3-2所示:
图3-2 第二层数据流图
3.2.2 数据字典
数据字典的作用是在软件分析和设计的过程中给人提供关于数据的描述信息。
(1) 数据流“会员”的字典条目如表3-1所示:
表3-1 数据流“会员”的字典条目
(2) 数据流“留言类别”的字典条目如表3-2所示:
表3-2 数据流“留言类别”的字典条目
(3) 数据流“旅行社”的字典条目如表3-3所示:
表3-3 数据流“旅行社”的字典条目 (4) 数据流“旅行线路”的字典条目如表3-4所示:
表3-4 数据流“旅行线路”的字典条目
(5) 数据流“酒店信息”的字典条目如表3-5所示:
表3-5 数据流“酒店信息”的字典条目
(6) 数据流“客房信息”的字典条目如表3-6
所示:
表3-6 数据流“客房信息”的字典条目
(7) 数据流“酒店预订”的字典条目如表3-7所示:
表3-7 数据流“酒店预订”的字典条目
(8) 数据流“景点”的字典条目如表3-8所示:
表3-8 数据流“酒店预订”的字典条目
(9) 数据流“景点预订”的字典条目如表3-9所示:
表3-9 数据流“景点预订”的字典条目
(10)
数据流“新闻”的字典条目如表3-10所示: 表3-10 数据流“帖子信息”的字典条目
(11)
表3-11 数据流“航班”的字典条目
(12)
表3-12 数据流“航班预订”的字典条目
数据流“航班预订”的字典条目如表3-12所示: 数据流“航班”的字典条目如表3-11所示:
第4章 总体设计
4.1 系统模块总体设计
系统设计是将需求抽象为代码实现的中间过程,正确且清楚的系统设计能使后续的实现和测试都快捷且不易出错。设计逻辑的失误往往会导致工作量较大的返工,因此,在一般的系统设计中,在系统设计完毕后需要对系统设计进行严格的检视和评审。
根据需求分析的需要,开发并实现一个旅游信息的平台。实现相关管理模块信息的查询、增加、删除等操作。
主要功能流程如图4-1所示。
图4-1 旅游网站功能流程图
4.2 数据库设计
数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建议中的核心技术。由于数据库应用系统的复杂性,为了支持相关程序运行,数据库设计就变得异常复杂,也就是规划和结构化数据库中的数据对象以及这些数据对象之间关系的过程。
4.2.1 数据分析
数据也称观测值,是实验、测量、观察、调查等的结果,常以数量的形
式给出。在应用当中,数据分析可以帮助我们作出有力的判断,以便更好的采取适当的行动。数据分析是组织有目的地收集数据、分析数据,使之成为信息的过程。这一过程是质量管理体系的支持过程。在产品的整个寿命周期,包括从市场调研到售后服务和最终处置的各个过程都需要适当运用数据分析过程,以提升有效性。例如:一个企业的领导人要通过市场调查,分析所得数据以判定市场动向,从而制定合适的生产及销售计划。因此数据分析有极广泛的应用范围。
4.3 数据库的详细设计
在动态网站的设计中,数据库设计非常重要。 在设计前,应考虑以下事项: (1) 定义标准的对象命名规范。 (2) 选择理想的数据库设计工具。 (3) 对数据完整性的保护。
(4) 数据库和用户权限的安全要求。
(5) 了解业务,根据业务需求创建数据库。 (6) 创建数据字典和ER 图表。 (7) 数据库维护。
4.3.1 数据库的E-R 图的设计
以下的E-R 图描述出了系统的实体之间的联系。 前台系统E-R 图如图
4-2所示。
图4-2 前台系统E-R 图
后台系统E-R
图如图4-3所示。
图4-3 后台系统E-R 图
本系统中一共有8个实体:
(1)实体管理员与其属性之间的联系如图4-4所示。
图4-4 管理员属性实体会员与其属性之间的联系
(2)实体会员与其属性之间的联系如图4-5所示。
图4-5 会员属性图
(3)实体酒店与其属性之间的联系如图4-6所示。
图4-6 酒店属性图
(4)实体航班与其属性之间的联系如图4-7所示。
图4-7 航班属性图
(5)实体线路与其属性之间的联系如图4-8所示。
图4-8 线属性图
(6)实体景点与其属性之间的联系如图4-9所示。
图4-9 景点属性图
(7)实体留言与其属性之间的联系如图4-10所示。
图4-10 留言属性图
4.3.2 数据表的设计
数据库设计一般包括数据库需求分析和数据库逻辑结构设计。
用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以
及数据处理的流程,为后面的具体设计打下基础。
通过上述系统功能分析,针对旅游网,总结出如下的需求信息:
(1)用户分一般用户、注册用户和管理员用户。
(2)一般用户和注册用户无需登录就可以查看旅游线路、酒店、新闻、票务、图片、景点。
(3)注册用户登录后可以维护自己的个人信息,并且在可以留言、预定酒店客房、预定机票、预定旅游线路。
(4)每间客房都对应一个酒店。
(5)每条新闻对应一个类型。
(6)每个航班对应一个航空公司。
(7)每个订单都以来于一个用户。
(8)每个路线都属于一种路线类型
(9)每条留言都对应一种留言类型
经过上述系统功能分析和需求总结,考虑到将来功能上的扩展,设计如下的数据项和数据结构:
本系统的数据库结构设计的27个基本的数据表,通过这27个表可以了解到这个系统的数据库的基本组织形式,以及进行数据库操作所需要的基本数据信息,下面截取了主要的数据库表。
1. 管理员信息
包含数据项:管理员编号、用户名、真实姓名、联系电话等。
管理员表如表4-1所示:
表4-1 管理员表(Admin )
2. 航空公司信息
包含数据项:航空公司编号、航空公司名等。
城市信息,包括数据项:城市编码、城市名称,所属省份等信息等。
城市信息表如表4-2所示:
3. 航班信息
包括数据项:航空公司编号、航班号、机票号、舱位等级等。
航班表如表4-3所示:
表4-3 航班表(Flight )
续表4-3
4. 航班订单信息
包括数据项:机票订单编号、航空公司编号、会员编号、航班编号、
预定张数、下单时间等。
机票预定表如表4-4所示:
表4-4机票预定表(FlightOrder )
表4-2 城市信息表(City )
5. 酒店信息
包括数据项:酒店类型编号、酒店编号、酒店名称等。
酒店表如表4-5所示:
6. 客房信息
包括数据项:酒店类型编号、酒店类型编号、客房编号等。
客房表如表4-6所示:
表4-6客房表(GuestRoom )
表4-5 酒店表(Hotel )
包括数据项:酒店编号、酒店预定编号、会员编号、结算方式等。酒店预定表如表4-7所示:
表4-7 酒店预定表(HotelOrder )
8. 客房订单信息
包括数据项:酒店类型编号、客房编号
酒店类型信息,包括数据项:酒店类型编号、酒店类型名称等、酒店预定编号等。。
线路信息,包括数据项:线路编号、线路名称、途径景点等。
线路表如表4-8所示。
表4-8线路表(Line )
包括数据项:线路类型编号、线路编号、线路预定编号、会员编号、订单序号、联系电话等。
线路类型信息,包括数据项:线路类型编号、线路类型名称等。
会员信息,包括数据项:会员编号、用户名、真实姓名、密码等。
留言信息,包括数据项:留言类型编号、留言编号、管理员编号、留言标题、留言者、留言内容等。
留言信息表如表4-9所示。
10. 留言类型信息
包括数据项:留言类型编号、留言类型名称等。
新闻类型信息,包括数据项:新闻类型编号、留言类型名称等。
图片信息,包括数据项:图片类型编号、图片编号、图片内容等。
图片类型信息,包括数据项:图片类型编号,图片类型名称。
景点信息,包括数据项:区域编号、景点编号、景点名称、景点图片等 景点区域信息,包括数据项:区域编号、区域名称等。
景点新闻信息,包括数据项:新闻类型编号、新闻编号、文章标题、关键字等。
景点订单信息,包括数据项:区域编号、景点编号、会员编号、管理员编号、预定张数、订单序号、结算方式等。
第5章 详细设计与实现
本网站系统是由前台网站系统和后台网站管理系统两大系统组成:前台网站系统模块和后台网站系统模块。
5.1 系统运行平台设置
1. 硬件环境
硬件环境如表5-1所示。
表5-1 运行环境硬件配置
2. 软件环境 Windows XP操作系统。
5.2 网站主界面设计
首页是一个网站的门面,如同公司的形象,特别注重设计和规划。它是用户首先见到的界面,它的好坏直接影响到网站的访问率。为此,本系统从以下几个方面对首页进行了设计。
(1)在色彩搭配上,一种较明快的色彩为基调,配以相关的其他色彩,给用户一种鲜而不艳的美感。
(2)在字体选用上,大小适当,尽量使用常用字体,适当配用艺术字。
(3)在网页制作上,采用框架式结构,在框架中嵌入子页,将大表化小,图片压缩,尽量减少页面响应时间。
(4)在内容上,主界面内容充实而不繁杂,既体现本站特色,又能满足用户需要。
(5)在用户操作上,简化用户操作,删去那些空洞的环节。例如,“用户注册”只须填写简单信息即可。
图5-1 网站主界面
5.3 用户注册与登录页面设计与实现
5.3.1 用户注册页面的设计与实现
1. 实现目标
非会员如果想拥有预定等功能则必须成为会员,可以通过点击主页上的注册来进行会员申请。在申请的页面中要填写会员基本信息,如:用户名,用户密码,提示问题等。在用户资料中填写用户的个人资料信息。在填写过程中会对用户填写的信息进行验证。判断用户名是否已经存在,用户填写的格式是否正确,用户的密码和确认密码是否一致等验证功能。填写完成后会将用户资料存在对应的数据库表中,管理员可以在后台管理界面中查询的到并能对其进行管理。
新用户通过选择注册操作,填写自己真实正确的资料并提交给系统,系统提示注册成功,从而享受系统为会员提供的服务;在填写资料的同时,系统对用户填写的资料进行核对,比如用户的电子邮箱格式是否符合一般电子邮箱格式。
注册界面设计如图5-2所示。
图5-2 注册界面
2. 用户注册程序流程描述
用户注册的程序流程图,如图5-3所示。
否 图5-3 用户注册程序流程图
3. 实现过程
当用户注册时,首先进入首页guilinTrip.jsp 页面,点击注册,进入register.jsp 页面。在register.jsp 页面填写用户信息。点击提交后,跳转到login1.jsp 页面,点击链接到login.jsp 页面进行登录。
5.3.2 用户登录页面的设计与实现
1. 实现目标
在网站首页上有会员登陆选项,登陆后自动进入用户个人界面,在网页中出现个人面板板块,在个人面板里列出了会员所有的权限和功能,包括:修改个人资料和密码,查询、预定酒店信息,查询、预定线路信息,查询、预定票务信息,浏览网站新闻和图片,在线留言等。
例:若某个会员对旅行线路感兴趣,可以查看到详细的信息,并且可以实现预定功能,填写线路订单。如果会员预定后,将数据保存到后台数据库当中,管理员可以通过查询看到相应预定线路的订单信息。
要进入后台登录界面,只有当管理员输入正确的管理员帐号和管理员密码,才能进入系统后台进行操作,对系统的基本资料进行管理,以及对系统进行维护。
如图5-4所示。
图5-4 登录界面
2. 用户登录程序流程描述
用户登录的用户程序流程图如图5-5所示。
否
图5-5 用户登录程序流程图
3. 实现过程
当用户进入网站进行登录时,首先在guilinTrip.jsp 页面中点击登录连接,连接到login.jsp 页。在login.jsp 页面填写要登录的用户名和密码,后台根据输入的用户名和密码取出会员信息表中的用户名和密码进行校验,如果相同,进入到会员用户首页;如果不相同,弹出提示框显示“用户名或密码不正确”。
5.4 酒店预订管理页面的设计与实现
当会员填写时会对会员填写的订单进行验证,确认其填写的订单格式内容等准确无误。然后提交订单,将订单信息提交到数据库当中,等待管理员后台处理订单。提交后订单状态显示为待处理,管理员处理后订单状态将改变。如果订单生效会改为有效订单,否则为无效订单。当会员支付定金之后订单状态为成交订单。
如图5-6所示。
图5-6 用户管理界面
5.5 线路预订的设计与实现
会员搜索出自己有兴趣的旅游线路以后,可以查看线路的详细信息,网站会把该条线路的各种详细信息以图文的方式展现出来,主要包括:
基本信息:主要包括线路的图片(主图) 、线路名称、预订价格、旅游天数、出发城市、出发日期、点击率等信息;
途径景点:把该条旅游线路途中经过的重要景点以关键字的形式列表出来,点击每一个关键字,网站将搜索所以包含该关键字的线路信息,用户可以进一步查看和该关键字有关的信息;
如图5-7所示。
图5-7 用户线路订单
5.6 机票预订的设计与实现
1. 实现目标
会员可以通过网站进行机票的预订。用户可以选择要预订的票务种类,然后使用网站提供的查询功能找到合适的票务信息,进行预订。网站提供给会员票务预订功能,该功能允许会员通过网站预订全国各大航空公司的机票。会员首先使用票务信息查询功能,检索出合适的票务信息,然后填写必要的预订信息进行票务预订。
如图5-8所示。
图5-8 用户机票订单
2. 后台机票设计
机票信息管理是对机票信息的综合维护管理,包括对各种票务的增加、删除、修改和统计查询并且包括航空公司的管理。
添加机票如图
5-9所示。
图5-9 管理员添加机票界面
机票信息查询如图5-10所示。
图5-10 机票查询界面
添加航空公司如图5-11所示。
图5-11 管理员添加航空公司界面
查看用户填写机票订单界面如图5-12所示。
图5-12 查看用户填写机票订单界面
第6章 软件测试
6.1 测试的基本概念
测试的正确定义是“为了发现程序中的错误而执行程序的过程”。这和某些人通常想象的“测试是为了表明程序是正确的”,“成功的测试是没有发现错误的测试”等是完全相反的。正确认识测试的目的是十分重要的,测试目的决定了测试方案的设计。如果为了表明程序是正确的而进行测试,就会设计一些不易暴露错误的测试方案;相反,如果测试是为了发现程序中的错误,就会力求设计出最能暴露错误的测试方案。
6.2 测试的任务和目的
测试的任务是通过在计算机上执行程序,暴露程序中潜在的错误。
测试的目的是发现程序中的错误。
需要明确的是软件测试不能证明软件没有存在的错误,软件测试只能减少软件中的错误和漏洞,使得软件能正常顺利的为人们提供各种服务。
6.3 系统整体测试步骤
软件测试的主要步骤有单元测试、集成测试和确认测试。
单元测试也称模块测试或分调,是层次测试的第一步,也是整个测试的基础。据统计,单元测试发现的错误,约占程序总错误数的65%,接近2/3。单元测试一般总是把黑盒测试与白盒测试结合运用,先用黑盒测试设计出一组测试用例,然后用白盒测试法,补充新的测试用例满足覆盖标准要求。一般情况下,单元测试应以白盒测试为主。采用从单元测试开始而不是对整个程序进行测试,一方面可以减少测试工作的复杂性,另一方面容易进行错误定位和纠错。
一般用黑盒测试法测试。
6.4 本系统测试
软件测试从理论定义来划分,可分为白盒测试和黑盒测试。为了测试系统的正确性和完整性,本章将对系统中的重点模块进行测试。
6.4.1 用户登录注册模块测试
用户登录注册测试目标描述:用户注册后,判断用户是否得到管理员的认证,具有登录的权限。如果用户拥有登录权限,则可以登录系统,进行信息的查看、线路预订、酒店预订、航班预订和景点查看。
用户登录测试如例:
输入用于登录的用户名:lq
密码:lq
用户登录测试结果,如图6-1所示。
图6-1 用户登录测试结果
用户注册测试如图6-2所示。
图6-2 用户注册测试
用户注册测试结果,如图6-3所示。
6-3 用户注册测试结果
6.4.2 酒店预订测试
酒店预订效果如图
6-4所示。
图6-4 用户预订效果图
6.4.3 管理员模块测试
在进入管理员页面后,管理员可以进行商品的分类的管理、会员的管理、留言的管理、网站的用户的管理和公告管理等。
管理员登录测试如例:
输入用于登录的用户名:admin
密码:admin
管理员登录界面,如图6-5所示。
图6-5 管理员登录界面
结 论
我的毕业设计的题目是《旅游网的设计与实现》。通过近三个月的努力,目前该系统的程序设计和论文撰写已经基本结束了。在此期间, 我根据题目要求,查阅了大量关于建设旅游网的相关资料,切实地按照软件工程的步骤, 从需求分析,概要设计,详细设计,数据库设计,再到编码,调试运行,测试等步骤。现已顺利完成各个步骤的开发工作,基本达到预期设计的要求。
通过本次毕业设计, 使我无论在理论上还是在实践上都有一个较大幅度的提高,尤其是对具体业务的抽象能力和对各种技术及框架的综合运用能力, 同时也培养了自己独立分析问题、解决问题以及与他人沟通交流的能力。
致 谢
为期三个多月的毕业设计即将结束,在此期间,在众位老师和同学的帮助下,我顺利地完成了本次设计任务。通过此次设计,我在软件研发与测试方面有很大收获。我要感谢所有帮助过我的人。
感谢学院和计算机系为我们提供了这次难得的锻炼自己的机会。
感谢我的导师在毕业设计的各个阶段对我提出的宝贵意见和建议,以及在需求分析、程序调试等阶段耐心的指导和帮助。老师的严谨的治学态度和渊博的知识储备深深影响着我。
感谢开题、中检、末检的老师在检查时提出的建议,这些建议纠正了我的错误,使我少走了不少弯路,也使本系统无论是在代码的编写上还是在功能的实现上都更合理。
感谢负责毕业设计的老师,为了我们的毕业设计能够顺利进行而奔波忙碌。
感谢我所使用的参考文献的编写及翻译者,他们的研究与探索,使我的毕业设计能够顺利地完成。
参考文献
[1] 王小春.JAVA 编程.重庆大学出版社,2009:18-27,102-152.
[2] Bruce Eckel 著.JAVA 编程思想.刘宗田,邢红等译.机械工业出版
社,2010:165-182.
[3] Jesse Liberty 著.21天学通JSP .康博创作室译.人民邮电出版社,
2011:92-108.
[4] Noel Llopis Beginnig .SQL Server 2005 Programming .Peachpit ,2009:
252-270.
[5]
[6]
[7]
[8] Nicolai M.Josuttis.Core Java.Monkeywrench ,2009:32-68. Roger S.pressman.Software Engineering.Jason Aronson,2010:24-36. 时尚旅游.时尚杂志社.2009,10期:10-15. 李红.JSP 网络编程(从基础到实践).长春工程学院学报.2007,02
期:12-20.
[9] 杜秀全,程家兴.软件工程教程.清华大学出版社.2007,01期:45-52.
[10] 林舒扬.网站建设.福建科学技术出版社,2009:86-95.
[11] 彭建国,那威.DREAMWEAVER .金盾出版社,2009:5-24.
[12] 王世国.JAVA 编程基础.清华大学出版社,2010:68-77.
[13] 王立峰.软件工程.清华大学出版社,2008:102-246.
[14] 张捍卫.基于AJAX 的资产网络清查系统的设计.计算机与现代化,
2010:135-168.
[15] 张建成,李春青.基于JSP 环境下访问数据库技术的研究.电脑知识与
技术,2010:189-256.
[16] 张杰,张景安,孙沛.基于云模型的C2C 电子商务信任评估模型.计
算机系统应用,2011:153-163.
[17] 张黎明,龚琪琳.WEB 应用技术.计算机系统应用,2012:153-163.
《旅游网的设计与实现》
摘 要
随着旅游行业的不断发展,各家旅游行业之间的竞争日益激烈,旅游部门所需的信息量越来越大,业务操作中涉及的各种线路情况、客户情况以及旅游协作部门的情况越来越复杂多变。而除了一些个别地区已采用了的旅游网站,一般通常是以原始的手工方式处理/交流信息。但是工作人员若仅靠手工方式处理大量资料,很可能带来出错率的增长以及大量资源的浪费和闲置等问题。因此,只有加强对旅游信息资源的整合、统一管理,才能使旅游部门运行更加合理、高效地运转。
本文是根据旅游行业的这种现状,提出解决问题的一个可行性方法:采用现代化统一的计算机网络系统,实现了旅游管理的网络化,各类信息有序地进行存储。对于普通用户,可以实现信息浏览,对于有需求的用户经过权限认证后可以进行信息浏览,在线预定,论坛等功能的使用。实现了各种业务系统的数据集成和信息集成,对旅行社,酒店各类信息、资源进行协同集中管理。本文论述了桂林旅游网站系统的分析、设计及开发的整体过程,介绍了网站的设计目标,系统需求和总体设计方案,较详细的论述了系统如何详细设计和实现。利用了Eclipse+MyEclipse、Dreamweaver 等开发工具,选择Tomcat 作为Web 服务器,系统采用Oracle 数据库。系统主要完成了用户注册、酒店查询与预定、旅游路线查询、机票查询与预定、桂林民俗介绍、旅游景点查询、在线留言等功能, 为管理员提供了酒店管理、各种新闻管理、订单处理、用户管理等功能。在设计方面,本系统采用B/S三层结构,在MVC 设计模式下,使用了Struts 框架,用JSP 技术进行动态页面的设计,并运用iBatis 对底层数据访问封装,将业务逻辑和数据访问逻辑分离,提供可维护性。
关键词:旅游网;系统与实现;Struts ;iBatis
Abstract
With the continuous development of tourism industry, tourism industry, the increasingly fierce competition between tourism department for information is more and more big, the operation of all sorts of line, customers and the department of tourism and complicated and changeable situation. But except for some specific area has adopted the tourist sites, usually in the original manual processing methods/information exchange. But if a staff of only by manual processing methods, is likely to have a growth rate and the waste of resources and idle. Therefore, only to strengthen the integration of tourism information resources, unified management, ability makes tourism department operation more reasonable and efficient operation.
This article is based on the status quo of tourism industry, and puts forward a feasible method to solve the problem of unity, adopts the modern computer network system, realized the tourism management network, all kinds of information stored in an orderly manner. For ordinar y users can browse information, to the needs of user access authentication can pass information to browse, online booking, BBS functions. The realization of the system of business and information integration, data integration for all kinds of information, travel and hotels for collaborative resource management. This paper discusses the system of guilin's tourism site analysis, design and development of the whole process, introduces the design goal, the website system demand and the overall design scheme, detail how the system design and implementation details. Using the Eclipse MyEclipse + development tool, Dreamweaver, such as a Web server, choose Tomcat Oracle database system. System mainly completed user registration, hotel reservation, and inquires tourist routes, ticket booking and inquires query, guilin custom, tourist attractions and online query message and so on the function, the administrator provides hotel management, various news management, order processing, user management, etc. In the design, t he system adopts B/S structure in three layers, design mode, using MVC framework, using the Struts techniques JSP page design, dynamic and iBatis use of data access layer encapsulation, business logic and data access to logical separation, provide the maintainability.
Key words: Information System Developing; B/S; Dynamic website
目 录
摘 要 ..................................... ..................... I Abstract .......................................................... II
第1章 绪论 ....................................................... 1
1.1 课题背景 .................................................... 1
1.2 目的和意义 .................................................. 1
1.3 系统设计思想 ................................................ 2
1.4 系统开发环境 ................................................ 2
1.4.1 B/S结构的数据库访问模式 ............................... 2
1.4.2 MyEclipse 简介 ......................................... 2
1.4.3 Oracle 数据库简介 ....................................... 2
1.5 本文的结构 .................................................. 3
第2章 可行性分析 ................................................. 4
2.1 经济可行性 .................................................. 4
2.2 技术可行性 .................................................. 5
2.3 操作可行性 .................................................. 5
2.4 业务流程图 .................................................. 5
第3章 需求分析 ................................................... 7
3.1 旅游网站的规划 .............................................. 7
3.2 旅游网站的需求分析 . ......................................... 7
3.2.1 数据流图 ................................................ 8
3.2.2 数据字典 ................................................ 8
第4章 总体设计 .................................................. 12
4.1 系统模块总体设计 ........................................... 12
4.2 数据库设计 ................................................. 12
4.2.1 数据分析 ............................................... 12
4.3 数据库的详细设计 ........................................... 13
4.3.1 数据库的E-R 图的设计 . .................................. 13
4.3.2 数据表的设计 ........................................... 17
第5章 详细设计与实现 ............................................ 23
5.1 系统运行平台设置 ........................................... 23
5.2 网站主界面设计 ............................................. 23
5.3 用户注册与登录页面设计与实现 .............................. 24
5.3.1 用户注册页面的设计与实现 .............................. 24
5.3.2 用户登录页面的设计与实现 .............................. 26
5.4 酒店预订管理页面的设计与实现 .............................. 27
5.5 线路预订的设计与实现 . ...................................... 28
5.6 机票预订的设计与实现 . ...................................... 29
第6章 软件测试 .................................................. 32
6.1 测试的基本概念 ............................................. 32
6.2 测试的任务和目的 ........................................... 32
6.3 系统整体测试步骤 ........................................... 32
6.4 本系统测试 ................................................. 32
6.4.1 用户登录注册模块测试 . .................................. 32
6.4.2 酒店预订测试 ........................................... 34
6.4.3 管理员模块测试 . ........................................ 34
结 论 ......................................................... 36
致 谢 ......................................................... 37
参考文献 ......................................................... 38
第1章 绪论
1.1 课题背景
十几年来计算机和计算机网络的应用普及,网上购物不断被赋予新的含义。网上购物被认为是通过信息技术将企业、用户、供应商及其它商贸活动涉及的职能机构结合起来的应用,是完成信息流、物流和资金流转移的一种行之有效的方法。随着Internet 的普及以及WWW 服务的提供,可以声、文、图并茂的方式体现商品的特征,并尽可能地便利用户。Internet 潜在的、对其他产业的影响,使得网上购物在国内外再掀热潮,网上购物亦被列为未来十大IT 主导技术之一,迎接新的“网上购物时代”成为人们讨论的主题。
改革开放以来,我国的旅游业有了非常迅速的发展,但是比较而言,我国国内旅游业发展的广度深度都远远不能适应经济发展和人民生活水平提高的需要。随着市场经济的发展和人民收入水平的进一步提高,人民对旅游消费的需求将进一步上升,国内旅游业在国民经济中的地位和作用越来越重要。
但我国旅游产业仍然基础薄弱,管理手段滞后,信息化程度低,企业效益较差。旅游行政管理部门存在管理方式落后,缺乏信息化管理手段,信息沟通渠道不通畅等问题,面对困难和挑战,我国旅游业必须转变观念,创新思维,以信息化建设为突破口和新手段,整合各种资源,从而实现整个行业的新跨越。加强旅游信息化建设,可以提高各级管理部门的工作效率和管理水平,精简办事程序,降低工作成本,加大宣传力度,加快信息传播速度,提高信息实效性;另一方面可以通过开展电子商务,满足游客的个性化需求,提高旅游服务质量,改变旅游企业传统经营模式,降低成本,增加效益,从而提高整个旅游产业素质,旅游实现信息化,将会进一步壮大旅游支柱产业,提升旅游产业整体信息化水平,优化产业结构和资源配置,完善产业链,进而带动众多相关产业发展,拉动内需,扩大就业,增加外汇收入,对经济发展起到积极的推动作用。
目前,我国的一些旅游部门在信息化方面做的工作和其投入较少,对自身的发展起到了制约作用,可以通过建立旅游网站来宣传本地的风土人情,对信息进行网络化、信息化管理,提高自身竞争能力。
1.2 目的和意义
旅游业是中国的一大产业,也是向世界展示中国的途径之一,国内著名的旅游城市很多,它们丰富、独特的自然人文资源和独具的特产也为旅游业的发展奠定了坚实的基础,但它还有一些不足,等待加强,如:政策、管理体制力度有待加强,市场狭窄、发展不均衡,规模小等。
面对困难和挑战,我们需要转变观念,创新思维,加强对旅游部门的整合、统一管理,使之更加合理、高效运转。
1.3 系统设计思想
在众多网络开发技术中,HTML 是一种重要的基本开发技术,而Jsp 技术是当前相当热门,它可以进行复杂的数据库操作、很强的交互性以及方便用户控制管理。
该旅游网站正是当今技术发展的产物,它是一套用Java 及其相关技术开发的能在网上进行的访问的旅游网页。本文介绍了旅游网站的国内外现状和存在的问题,以及设计这个旅游网的目的与意义
1.4 系统开发环境
1.4.1 B/S结构的数据库访问模式
B/S体系结构如图1-1所示。
图1-1 B/S三级结构组成
在B/S体系结构系统中,用户通过浏览器向分布在网络上的许多服务器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。如果开发商要升级版本,也是很方便的。 不用像C/S结构体系那样,要考虑到语言和兼容性等问题。
1.4.2 MyEclipse 简介
MyEclipse 是一个专门为Eclipse 设计的商业插件和开源插件的完美集合。MyEclipse 为Eclipse 提供了一个大量私有和开源的Java 工具的集合,很大程度上解决了各种开源工具的不一致和缺点问题,并大大提高了Java 和JSP 应用开发的效率。新版本的MyEclipse 提供了AJAX 、Struts Development 、Hibernate Tools、Spring IDE Integration等功能。
1.4.3 Oracle 数据库简介
Oracle Database ,又名Oracle RDBMS ,或简称Oracle 。Oracle 是最受欢迎的数据库管理系统,它由Oracle 公司开发、发布和支持。Oracle 数据库的体系结构包括物理存储结构和逻辑存储结构。由于它们是相分离的,所以在管理数据的物理存储结构时并不会影响对逻辑存储结构的存取。从计算机可以很好的处理大量的数据以来,数据库管理系统就在计算机处理中和独立应用程序或其他部分应用程序一样扮演着一个重要的角色。
1.5 本文的结构
本文介绍了旅游网站的设计与开发,主要包括对该系统需求的分析,各功能模块的设计划分,数据库的设计与实现,及系统功能的实现与测试。
本文共6章,按如下方式组织:
第1章介绍了旅游网站的课题背景、目的意义和系统的设计思想,以及系统开发所涉及到的环境等。
第2章主要针对旅游网站进行可行性分析,分析该网站是否有开发的必要性和可行性。并根据调研结果画出旅游网站的业务流程图。
第3章主要是对旅游网站进行需求分析,规划系统所要拥有的功能。根据旅游网站的需求分析画出数据流图。
第4章实现网站的总体设计,其中包括系统模块的总体设计、数据库设计、数据库的详细设计。
第5章对系统进行详细设计,系统运行平台设置、网站主界面设计和用户其他界面的设计与实现。
第6章测试旅游网站是否存在漏洞,并针对此点讲述了测试的基本概念、测试的任务和目的、系统整体测试的步骤以及一些内部功能的测试。
第2章 可行性分析
2.1 经济可行性
由于Oracle 数据库和Tomcat 服务器都是开源的免费的开发学习工具,而且,本系统使用灵活方便,所需的开发人员不多,技术也不是很复杂,开发周期较短,因此开发成本较低。市场前景非常看好,所以说经济方面可行。
1. 系统的初期投资
系统的初期投资如表2-1所示。
2. 货币的时间价值
系统货币的时间价值如表2-2所示。
表2-2 旅游网站的时间价值
3. 投资回收期
引入移动计费系统两年后,可以节省1.86万元,比最初投资还少0.14万元。但第三年可以节省0.864万元。
即:0.14/0.864=0.162 2+0.162=2.162
故引入本系统后,投资回收期为2.162年。
4. 纯收入
3.546-1.87=1.676 (万元)
故引入本系统后,纯收入为1.676万元。
经过以上分析,移动计费系统的开发是可行的。
2.2 技术可行性
本系统采用的是JSP 、Struts 、iBatis 和Oracle 开发,Windows XP Professional 操作系统,用Dreamweaver 进行前台网页界面设计、采用iBatis 方式与后台数据库进行连接,完成数据的添加、修改、删除、查询等功能。iBatis 简便实用,不像JDBC 那样繁琐又比Hibearnate 易于理解,以及目前的广泛实际应用,因此使用JSP 、Struts 、iBatis 、Oracle 是开发轻平台的最佳组合从而说明本系统在技术方面可行。
2.3 操作可行性
本网站系统的页面设计清晰友好,操作简单,功能齐全,使用方便,用户无须学习即可使用,因此使用方面可行。
2.4 业务流程图
以目前在Internet 上旅游信息平台的运营模式,分析设计并实现一个旅游网站信息的平台。用软件工程设计的思想和步骤进行设计,撰写相关文档。课题目标是网站操作简单,清晰友好,功能齐全,使用方便,系统响应快,数据稳定,网站管理系统的合理规范。包括以下几大模块:
(1) 景点/景区模块
(2) 图片管理模块
(3) 会员模块
(4) 预定模块
(5) 注册模块
主要业务流程如图2-1所示。
图2-1 旅游网站业务流程图
第3章 需求分析
3.1 旅游网站的规划
该旅游网站系统在总体上可分为前台用户和后台管理两个部分。前台主要是实现一些提供给用户的使用功能,包括酒店、旅游路线、民俗等方面的相关信息的检索,并提供一些酒店预订、票务预订等方面的便民服务;后台实现的是各种相关信息数据的处理和维护。
3.2 旅游网站的需求分析
该旅游网站主要包括以下几个模块: 1. 新闻发布模块
实现对所发布的新闻进行检索,能浏览网站所发布的所有新闻;
管理员可以对新闻进行添加,删除和修改功能; 2. 景点/景区模块
实现对所发布的景点/景区进行检索,能浏览网站所发布的所有景点/景区;
管理员可以对景点/景区进行添加,删除和修改功能; 3. 图片管理模块
实现对所发布的图片进行检索,在网站上显示和浏览所发布的所有图片;
管理员可以对图片进行添加,删除和修改功能; 4. 会员模块
注册的会员可以浏览信息,预定线路、酒店和票务,可以再论坛发帖和留言;
5. 预定模块
实现对所有的旅行线路、酒店信息和票务信息进行检索,能浏览网站所发布的相关信息;
会员可以在个人面板里实现在线预定旅行线路、在线预定酒店和在线预订票务功能;
管理员可在后台查阅到预定者的信息; 6. 注册模块
普通用户可以浏览信息,但对于预定和论坛的发布需要用户注册会员才可以实现;
管理员可以对用户进行查询,删除的功能。
3.2.1 数据流图
(1)顶层数据流图如图3-1所示:
用户登录或注册信息
反馈登录状态
反馈登陆或注册状态 管理员登录信息
图3-1 顶层数据流图
(2)第二层数据流图如图3-2所示:
图3-2 第二层数据流图
3.2.2 数据字典
数据字典的作用是在软件分析和设计的过程中给人提供关于数据的描述信息。
(1) 数据流“会员”的字典条目如表3-1所示:
表3-1 数据流“会员”的字典条目
(2) 数据流“留言类别”的字典条目如表3-2所示:
表3-2 数据流“留言类别”的字典条目
(3) 数据流“旅行社”的字典条目如表3-3所示:
表3-3 数据流“旅行社”的字典条目 (4) 数据流“旅行线路”的字典条目如表3-4所示:
表3-4 数据流“旅行线路”的字典条目
(5) 数据流“酒店信息”的字典条目如表3-5所示:
表3-5 数据流“酒店信息”的字典条目
(6) 数据流“客房信息”的字典条目如表3-6
所示:
表3-6 数据流“客房信息”的字典条目
(7) 数据流“酒店预订”的字典条目如表3-7所示:
表3-7 数据流“酒店预订”的字典条目
(8) 数据流“景点”的字典条目如表3-8所示:
表3-8 数据流“酒店预订”的字典条目
(9) 数据流“景点预订”的字典条目如表3-9所示:
表3-9 数据流“景点预订”的字典条目
(10)
数据流“新闻”的字典条目如表3-10所示: 表3-10 数据流“帖子信息”的字典条目
(11)
表3-11 数据流“航班”的字典条目
(12)
表3-12 数据流“航班预订”的字典条目
数据流“航班预订”的字典条目如表3-12所示: 数据流“航班”的字典条目如表3-11所示:
第4章 总体设计
4.1 系统模块总体设计
系统设计是将需求抽象为代码实现的中间过程,正确且清楚的系统设计能使后续的实现和测试都快捷且不易出错。设计逻辑的失误往往会导致工作量较大的返工,因此,在一般的系统设计中,在系统设计完毕后需要对系统设计进行严格的检视和评审。
根据需求分析的需要,开发并实现一个旅游信息的平台。实现相关管理模块信息的查询、增加、删除等操作。
主要功能流程如图4-1所示。
图4-1 旅游网站功能流程图
4.2 数据库设计
数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建议中的核心技术。由于数据库应用系统的复杂性,为了支持相关程序运行,数据库设计就变得异常复杂,也就是规划和结构化数据库中的数据对象以及这些数据对象之间关系的过程。
4.2.1 数据分析
数据也称观测值,是实验、测量、观察、调查等的结果,常以数量的形
式给出。在应用当中,数据分析可以帮助我们作出有力的判断,以便更好的采取适当的行动。数据分析是组织有目的地收集数据、分析数据,使之成为信息的过程。这一过程是质量管理体系的支持过程。在产品的整个寿命周期,包括从市场调研到售后服务和最终处置的各个过程都需要适当运用数据分析过程,以提升有效性。例如:一个企业的领导人要通过市场调查,分析所得数据以判定市场动向,从而制定合适的生产及销售计划。因此数据分析有极广泛的应用范围。
4.3 数据库的详细设计
在动态网站的设计中,数据库设计非常重要。 在设计前,应考虑以下事项: (1) 定义标准的对象命名规范。 (2) 选择理想的数据库设计工具。 (3) 对数据完整性的保护。
(4) 数据库和用户权限的安全要求。
(5) 了解业务,根据业务需求创建数据库。 (6) 创建数据字典和ER 图表。 (7) 数据库维护。
4.3.1 数据库的E-R 图的设计
以下的E-R 图描述出了系统的实体之间的联系。 前台系统E-R 图如图
4-2所示。
图4-2 前台系统E-R 图
后台系统E-R
图如图4-3所示。
图4-3 后台系统E-R 图
本系统中一共有8个实体:
(1)实体管理员与其属性之间的联系如图4-4所示。
图4-4 管理员属性实体会员与其属性之间的联系
(2)实体会员与其属性之间的联系如图4-5所示。
图4-5 会员属性图
(3)实体酒店与其属性之间的联系如图4-6所示。
图4-6 酒店属性图
(4)实体航班与其属性之间的联系如图4-7所示。
图4-7 航班属性图
(5)实体线路与其属性之间的联系如图4-8所示。
图4-8 线属性图
(6)实体景点与其属性之间的联系如图4-9所示。
图4-9 景点属性图
(7)实体留言与其属性之间的联系如图4-10所示。
图4-10 留言属性图
4.3.2 数据表的设计
数据库设计一般包括数据库需求分析和数据库逻辑结构设计。
用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以
及数据处理的流程,为后面的具体设计打下基础。
通过上述系统功能分析,针对旅游网,总结出如下的需求信息:
(1)用户分一般用户、注册用户和管理员用户。
(2)一般用户和注册用户无需登录就可以查看旅游线路、酒店、新闻、票务、图片、景点。
(3)注册用户登录后可以维护自己的个人信息,并且在可以留言、预定酒店客房、预定机票、预定旅游线路。
(4)每间客房都对应一个酒店。
(5)每条新闻对应一个类型。
(6)每个航班对应一个航空公司。
(7)每个订单都以来于一个用户。
(8)每个路线都属于一种路线类型
(9)每条留言都对应一种留言类型
经过上述系统功能分析和需求总结,考虑到将来功能上的扩展,设计如下的数据项和数据结构:
本系统的数据库结构设计的27个基本的数据表,通过这27个表可以了解到这个系统的数据库的基本组织形式,以及进行数据库操作所需要的基本数据信息,下面截取了主要的数据库表。
1. 管理员信息
包含数据项:管理员编号、用户名、真实姓名、联系电话等。
管理员表如表4-1所示:
表4-1 管理员表(Admin )
2. 航空公司信息
包含数据项:航空公司编号、航空公司名等。
城市信息,包括数据项:城市编码、城市名称,所属省份等信息等。
城市信息表如表4-2所示:
3. 航班信息
包括数据项:航空公司编号、航班号、机票号、舱位等级等。
航班表如表4-3所示:
表4-3 航班表(Flight )
续表4-3
4. 航班订单信息
包括数据项:机票订单编号、航空公司编号、会员编号、航班编号、
预定张数、下单时间等。
机票预定表如表4-4所示:
表4-4机票预定表(FlightOrder )
表4-2 城市信息表(City )
5. 酒店信息
包括数据项:酒店类型编号、酒店编号、酒店名称等。
酒店表如表4-5所示:
6. 客房信息
包括数据项:酒店类型编号、酒店类型编号、客房编号等。
客房表如表4-6所示:
表4-6客房表(GuestRoom )
表4-5 酒店表(Hotel )
包括数据项:酒店编号、酒店预定编号、会员编号、结算方式等。酒店预定表如表4-7所示:
表4-7 酒店预定表(HotelOrder )
8. 客房订单信息
包括数据项:酒店类型编号、客房编号
酒店类型信息,包括数据项:酒店类型编号、酒店类型名称等、酒店预定编号等。。
线路信息,包括数据项:线路编号、线路名称、途径景点等。
线路表如表4-8所示。
表4-8线路表(Line )
包括数据项:线路类型编号、线路编号、线路预定编号、会员编号、订单序号、联系电话等。
线路类型信息,包括数据项:线路类型编号、线路类型名称等。
会员信息,包括数据项:会员编号、用户名、真实姓名、密码等。
留言信息,包括数据项:留言类型编号、留言编号、管理员编号、留言标题、留言者、留言内容等。
留言信息表如表4-9所示。
10. 留言类型信息
包括数据项:留言类型编号、留言类型名称等。
新闻类型信息,包括数据项:新闻类型编号、留言类型名称等。
图片信息,包括数据项:图片类型编号、图片编号、图片内容等。
图片类型信息,包括数据项:图片类型编号,图片类型名称。
景点信息,包括数据项:区域编号、景点编号、景点名称、景点图片等 景点区域信息,包括数据项:区域编号、区域名称等。
景点新闻信息,包括数据项:新闻类型编号、新闻编号、文章标题、关键字等。
景点订单信息,包括数据项:区域编号、景点编号、会员编号、管理员编号、预定张数、订单序号、结算方式等。
第5章 详细设计与实现
本网站系统是由前台网站系统和后台网站管理系统两大系统组成:前台网站系统模块和后台网站系统模块。
5.1 系统运行平台设置
1. 硬件环境
硬件环境如表5-1所示。
表5-1 运行环境硬件配置
2. 软件环境 Windows XP操作系统。
5.2 网站主界面设计
首页是一个网站的门面,如同公司的形象,特别注重设计和规划。它是用户首先见到的界面,它的好坏直接影响到网站的访问率。为此,本系统从以下几个方面对首页进行了设计。
(1)在色彩搭配上,一种较明快的色彩为基调,配以相关的其他色彩,给用户一种鲜而不艳的美感。
(2)在字体选用上,大小适当,尽量使用常用字体,适当配用艺术字。
(3)在网页制作上,采用框架式结构,在框架中嵌入子页,将大表化小,图片压缩,尽量减少页面响应时间。
(4)在内容上,主界面内容充实而不繁杂,既体现本站特色,又能满足用户需要。
(5)在用户操作上,简化用户操作,删去那些空洞的环节。例如,“用户注册”只须填写简单信息即可。
图5-1 网站主界面
5.3 用户注册与登录页面设计与实现
5.3.1 用户注册页面的设计与实现
1. 实现目标
非会员如果想拥有预定等功能则必须成为会员,可以通过点击主页上的注册来进行会员申请。在申请的页面中要填写会员基本信息,如:用户名,用户密码,提示问题等。在用户资料中填写用户的个人资料信息。在填写过程中会对用户填写的信息进行验证。判断用户名是否已经存在,用户填写的格式是否正确,用户的密码和确认密码是否一致等验证功能。填写完成后会将用户资料存在对应的数据库表中,管理员可以在后台管理界面中查询的到并能对其进行管理。
新用户通过选择注册操作,填写自己真实正确的资料并提交给系统,系统提示注册成功,从而享受系统为会员提供的服务;在填写资料的同时,系统对用户填写的资料进行核对,比如用户的电子邮箱格式是否符合一般电子邮箱格式。
注册界面设计如图5-2所示。
图5-2 注册界面
2. 用户注册程序流程描述
用户注册的程序流程图,如图5-3所示。
否 图5-3 用户注册程序流程图
3. 实现过程
当用户注册时,首先进入首页guilinTrip.jsp 页面,点击注册,进入register.jsp 页面。在register.jsp 页面填写用户信息。点击提交后,跳转到login1.jsp 页面,点击链接到login.jsp 页面进行登录。
5.3.2 用户登录页面的设计与实现
1. 实现目标
在网站首页上有会员登陆选项,登陆后自动进入用户个人界面,在网页中出现个人面板板块,在个人面板里列出了会员所有的权限和功能,包括:修改个人资料和密码,查询、预定酒店信息,查询、预定线路信息,查询、预定票务信息,浏览网站新闻和图片,在线留言等。
例:若某个会员对旅行线路感兴趣,可以查看到详细的信息,并且可以实现预定功能,填写线路订单。如果会员预定后,将数据保存到后台数据库当中,管理员可以通过查询看到相应预定线路的订单信息。
要进入后台登录界面,只有当管理员输入正确的管理员帐号和管理员密码,才能进入系统后台进行操作,对系统的基本资料进行管理,以及对系统进行维护。
如图5-4所示。
图5-4 登录界面
2. 用户登录程序流程描述
用户登录的用户程序流程图如图5-5所示。
否
图5-5 用户登录程序流程图
3. 实现过程
当用户进入网站进行登录时,首先在guilinTrip.jsp 页面中点击登录连接,连接到login.jsp 页。在login.jsp 页面填写要登录的用户名和密码,后台根据输入的用户名和密码取出会员信息表中的用户名和密码进行校验,如果相同,进入到会员用户首页;如果不相同,弹出提示框显示“用户名或密码不正确”。
5.4 酒店预订管理页面的设计与实现
当会员填写时会对会员填写的订单进行验证,确认其填写的订单格式内容等准确无误。然后提交订单,将订单信息提交到数据库当中,等待管理员后台处理订单。提交后订单状态显示为待处理,管理员处理后订单状态将改变。如果订单生效会改为有效订单,否则为无效订单。当会员支付定金之后订单状态为成交订单。
如图5-6所示。
图5-6 用户管理界面
5.5 线路预订的设计与实现
会员搜索出自己有兴趣的旅游线路以后,可以查看线路的详细信息,网站会把该条线路的各种详细信息以图文的方式展现出来,主要包括:
基本信息:主要包括线路的图片(主图) 、线路名称、预订价格、旅游天数、出发城市、出发日期、点击率等信息;
途径景点:把该条旅游线路途中经过的重要景点以关键字的形式列表出来,点击每一个关键字,网站将搜索所以包含该关键字的线路信息,用户可以进一步查看和该关键字有关的信息;
如图5-7所示。
图5-7 用户线路订单
5.6 机票预订的设计与实现
1. 实现目标
会员可以通过网站进行机票的预订。用户可以选择要预订的票务种类,然后使用网站提供的查询功能找到合适的票务信息,进行预订。网站提供给会员票务预订功能,该功能允许会员通过网站预订全国各大航空公司的机票。会员首先使用票务信息查询功能,检索出合适的票务信息,然后填写必要的预订信息进行票务预订。
如图5-8所示。
图5-8 用户机票订单
2. 后台机票设计
机票信息管理是对机票信息的综合维护管理,包括对各种票务的增加、删除、修改和统计查询并且包括航空公司的管理。
添加机票如图
5-9所示。
图5-9 管理员添加机票界面
机票信息查询如图5-10所示。
图5-10 机票查询界面
添加航空公司如图5-11所示。
图5-11 管理员添加航空公司界面
查看用户填写机票订单界面如图5-12所示。
图5-12 查看用户填写机票订单界面
第6章 软件测试
6.1 测试的基本概念
测试的正确定义是“为了发现程序中的错误而执行程序的过程”。这和某些人通常想象的“测试是为了表明程序是正确的”,“成功的测试是没有发现错误的测试”等是完全相反的。正确认识测试的目的是十分重要的,测试目的决定了测试方案的设计。如果为了表明程序是正确的而进行测试,就会设计一些不易暴露错误的测试方案;相反,如果测试是为了发现程序中的错误,就会力求设计出最能暴露错误的测试方案。
6.2 测试的任务和目的
测试的任务是通过在计算机上执行程序,暴露程序中潜在的错误。
测试的目的是发现程序中的错误。
需要明确的是软件测试不能证明软件没有存在的错误,软件测试只能减少软件中的错误和漏洞,使得软件能正常顺利的为人们提供各种服务。
6.3 系统整体测试步骤
软件测试的主要步骤有单元测试、集成测试和确认测试。
单元测试也称模块测试或分调,是层次测试的第一步,也是整个测试的基础。据统计,单元测试发现的错误,约占程序总错误数的65%,接近2/3。单元测试一般总是把黑盒测试与白盒测试结合运用,先用黑盒测试设计出一组测试用例,然后用白盒测试法,补充新的测试用例满足覆盖标准要求。一般情况下,单元测试应以白盒测试为主。采用从单元测试开始而不是对整个程序进行测试,一方面可以减少测试工作的复杂性,另一方面容易进行错误定位和纠错。
一般用黑盒测试法测试。
6.4 本系统测试
软件测试从理论定义来划分,可分为白盒测试和黑盒测试。为了测试系统的正确性和完整性,本章将对系统中的重点模块进行测试。
6.4.1 用户登录注册模块测试
用户登录注册测试目标描述:用户注册后,判断用户是否得到管理员的认证,具有登录的权限。如果用户拥有登录权限,则可以登录系统,进行信息的查看、线路预订、酒店预订、航班预订和景点查看。
用户登录测试如例:
输入用于登录的用户名:lq
密码:lq
用户登录测试结果,如图6-1所示。
图6-1 用户登录测试结果
用户注册测试如图6-2所示。
图6-2 用户注册测试
用户注册测试结果,如图6-3所示。
6-3 用户注册测试结果
6.4.2 酒店预订测试
酒店预订效果如图
6-4所示。
图6-4 用户预订效果图
6.4.3 管理员模块测试
在进入管理员页面后,管理员可以进行商品的分类的管理、会员的管理、留言的管理、网站的用户的管理和公告管理等。
管理员登录测试如例:
输入用于登录的用户名:admin
密码:admin
管理员登录界面,如图6-5所示。
图6-5 管理员登录界面
结 论
我的毕业设计的题目是《旅游网的设计与实现》。通过近三个月的努力,目前该系统的程序设计和论文撰写已经基本结束了。在此期间, 我根据题目要求,查阅了大量关于建设旅游网的相关资料,切实地按照软件工程的步骤, 从需求分析,概要设计,详细设计,数据库设计,再到编码,调试运行,测试等步骤。现已顺利完成各个步骤的开发工作,基本达到预期设计的要求。
通过本次毕业设计, 使我无论在理论上还是在实践上都有一个较大幅度的提高,尤其是对具体业务的抽象能力和对各种技术及框架的综合运用能力, 同时也培养了自己独立分析问题、解决问题以及与他人沟通交流的能力。
致 谢
为期三个多月的毕业设计即将结束,在此期间,在众位老师和同学的帮助下,我顺利地完成了本次设计任务。通过此次设计,我在软件研发与测试方面有很大收获。我要感谢所有帮助过我的人。
感谢学院和计算机系为我们提供了这次难得的锻炼自己的机会。
感谢我的导师在毕业设计的各个阶段对我提出的宝贵意见和建议,以及在需求分析、程序调试等阶段耐心的指导和帮助。老师的严谨的治学态度和渊博的知识储备深深影响着我。
感谢开题、中检、末检的老师在检查时提出的建议,这些建议纠正了我的错误,使我少走了不少弯路,也使本系统无论是在代码的编写上还是在功能的实现上都更合理。
感谢负责毕业设计的老师,为了我们的毕业设计能够顺利进行而奔波忙碌。
感谢我所使用的参考文献的编写及翻译者,他们的研究与探索,使我的毕业设计能够顺利地完成。
参考文献
[1] 王小春.JAVA 编程.重庆大学出版社,2009:18-27,102-152.
[2] Bruce Eckel 著.JAVA 编程思想.刘宗田,邢红等译.机械工业出版
社,2010:165-182.
[3] Jesse Liberty 著.21天学通JSP .康博创作室译.人民邮电出版社,
2011:92-108.
[4] Noel Llopis Beginnig .SQL Server 2005 Programming .Peachpit ,2009:
252-270.
[5]
[6]
[7]
[8] Nicolai M.Josuttis.Core Java.Monkeywrench ,2009:32-68. Roger S.pressman.Software Engineering.Jason Aronson,2010:24-36. 时尚旅游.时尚杂志社.2009,10期:10-15. 李红.JSP 网络编程(从基础到实践).长春工程学院学报.2007,02
期:12-20.
[9] 杜秀全,程家兴.软件工程教程.清华大学出版社.2007,01期:45-52.
[10] 林舒扬.网站建设.福建科学技术出版社,2009:86-95.
[11] 彭建国,那威.DREAMWEAVER .金盾出版社,2009:5-24.
[12] 王世国.JAVA 编程基础.清华大学出版社,2010:68-77.
[13] 王立峰.软件工程.清华大学出版社,2008:102-246.
[14] 张捍卫.基于AJAX 的资产网络清查系统的设计.计算机与现代化,
2010:135-168.
[15] 张建成,李春青.基于JSP 环境下访问数据库技术的研究.电脑知识与
技术,2010:189-256.
[16] 张杰,张景安,孙沛.基于云模型的C2C 电子商务信任评估模型.计
算机系统应用,2011:153-163.
[17] 张黎明,龚琪琳.WEB 应用技术.计算机系统应用,2012:153-163.