旅游管理信息系统的设计与实现 - 图文

更新时间:2024-04-23 22:17:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

摘要

摘 要

旅游管理信息系统的设计与实现

旅游管理信息系统建设是面向现实需求的一个实用系统。其设计的目的是为游客和旅行社提供一个友好的、直接的交流平台。本系统主要分为六大模块:旅游咨询信息、旅游线路信息、热点旅游线路信息、线路查询、留言信息以及权限管理。该系统的主要功能:提供给管理者一个简单的界面,可以合理计划安排导游的工作和及时了解游客的要求和信息;提供给游客一个清新的界面选择自己向往的旅游胜地。

本系统采用JSP进行开发,结合SQL SERVER 来创建数据库和程序跟踪与管理信息。本系统的设计过程完全按照软件工程的要求开发的,主要分为以下几个步骤:首先进行可行性研究;第二步进行详细调查,需求分析;第三步进行系统总体结构设计,完成系统所需的数据库设计;第四步进行系统详细设计,最后进行软件编码和系统测试。

关键词:线路查询;旅游咨询信息;JSP ;SQL SERVER

I

Abstract

Abstract

Travel information management system

The traveling information management system construction is faces the realistic demand an utility system. Its design's goal is in a friendly way provides one for the tourist and the travel agent, the direct exchange platform. This system mainly divides into six big modules: Traveling consultation information, tourist route information, hot spot tourist route information, line inquiry, message information as well as jurisdiction management. This system's major function: Provides for the superintendent a simple contact surface, may plan reasonably arranges tour guide's work and understands tourist's request and the information promptly; Provides tourist attraction which a fresh contact surface chooses itself for the tourist to yearn.

This system uses JSP to carry on the development, unifies SQL SERVER to found the database and the program tracking and the management information. This system's design process defers to the software engineering completely the request development, mainly divides into the following Several steps: First conducts the feasibility study; Second step carries on the close investigation, the demand analysis; Third step carries on the system gross structure design, completes database design which the system needs; Fourth step carries on the system detailed design, finally carries on the software code and the system test.

Keywords: Traveling consultation information; line inquiry; JSP; SQL SERVER

II

目录

目 录

摘 要 .................................................................................................................................... I 旅游管理信息系统的设计与实现 ............................................................................................ I Abstract ................................................................................................................................... II Travel information management system .............................................................................. II 1 绪 论 ............................................................................................................................... 1

1.1 选题背景 ................................................................................................................... 1 1.2 选题依据 ................................................................................................................... 1 1.3 旅游管理信息系统开发现状 ................................................................................... 2 2 开发工具简介 ..................................................................................................................... 2

2.1 JSP介绍 .................................................................................................................... 2 2.2 数据库的介绍 ........................................................................................................... 3 2.3 关系型数据库的实现 ............................................................................................... 4 2.4 旅游系统软件开发方法 ........................................................................................... 4 3 系统的总体设计 ................................................................................................................. 5

3.1 系统分析 ................................................................................................................... 5

3.1.1 可行性分析 ..................................................................................................... 5 3.1.2 需求分析 ......................................................................................................... 6 3.2 问题定义 ................................................................................................................... 7

3.2.1 设计目的和任务 ............................................................................................. 7 3.2.2 设计要求 ......................................................................................................... 8 3.3 系统设计 ................................................................................................................... 8 3.4 系统E-R图及数据库表的结构 .............................................................................. 9

3.4.1 E-R模型简介 ................................................................................................. 9 3.4.2 系统总体E-R图 .......................................................................................... 10 3.4.3 数据表结构设计 ........................................................................................... 11

4 系统开发 ........................................................................................................................... 12

4.1 详细设计 ................................................................................................................. 13 4.3 模块功能实现 ......................................................................................................... 18 4.3 程序流程图 ............................................................................................................. 22

4.3.1 程序设计 ....................................................................................................... 22 4.3.2 编程的过程及特色 ....................................................................................... 23

5 软件测试 ........................................................................................................................... 23

5.1 安装说明 ................................................................................................................. 24 5.2 软件测试 ................................................................................................................. 24 5.3 测试的目的及相关问题 ......................................................................................... 24 5.4 测试过程 ................................................................................................................. 25 5.5 测试结果 ................................................................................................................. 25 结 论 ................................................................................................................................. 25 参考文献 ................................................................................................................................. 26 致 谢 ................................................................................................................................. 26 附录 外文文献及译文 ......................................................................................................... 26

III

河北科技师范学院2013届本科毕业设计

1 绪 论

随着社会发展、工业进步,近年来人民的生活水平日益提高,消费结构也发生了巨大的变化。人们的生活不再只局限于简单地满足温饱,越来越多的人开始注重生活的质量,即身体素质和精神文化素质的同步提高。同时,国家也积极鼓励人们利用节假日外出旅游,游览各地的美丽景色,了解那里的人文地理和风土人情。这样一方面可以锻炼和提高全民素质,一方面还可以增加国家旅游财政方面的收入,利国利民。

计算机科学日渐成熟,它已进入人类社会的各个领域并发挥着越来越重要的作用,用手工统计数据资料的工作方式正逐步远去。丰富多彩的旅游景点需要一个合适的管理系统来规范,使得各项工作都能有条有理地进行。旅游管理信息系统正是想改善那些原有的不足,更好的为游客提供直接交流的平台,更好地协调不同的意见。它能提供给管理者一个简单的界面可以合理计划安排导游的工作和及时了解游客的要求和信息;它还能提供给游客一个清新友好的界面选择自己向往的旅游胜地。

网上信息的发布由于其及时性,方便性等诸多的优点被越来越多的人们所接受。旅行社作为一个为旅客提供旅行服务的行业,其发布和更新信息的速度将直接的影响到企业的前景。

1.1 选题背景

我国旅游产业仍然基础薄弱,管理手段滞后,信息化程度低,企业效益较差。旅游行政管理部门存在管理方式落后,缺乏信息化管理手段,信息沟通渠道不通畅等问题.,面对困难和挑战,我国旅游业必须转变观念,创新思维,以信息化建设为突破口和新手段,整合各种资源,从而实现整个行业的新跨越。

然而目前,我国的一些旅游部门在信息化方面做的工作和其投入较少,对自身的发展起到了制约作用,可以通过建立旅游管理信息系统来宣传本地的风土人情,对信息进行网络化、信息化管理,提高自身竞争能力。

1.2 选题依据

随着国内互联网的发展,旅游业也成为网上的热点主题,旅游类电子商务站点也纷纷建立。不过许多网站的内容还只限于旅游信息的发布和介绍,而互联网与旅游业的结合发展显然不应局限于此。用户不再满足于通过浏览器看到静态页面,而是希望能根据要求生成更加灵活的、生动的动态页面。

动态网页包含交互功能,动态网页的特点有:以数据库技术为基础,可以大大降低网站维护的工作量;采用动态网页技术的网站可以实现更多的功能,如管理员用户登录、

1

河北科技师范学院2013届本科毕业设计

后台管理等功能;不是独立存在于服务器的网页文件,只有当用户请求服务器才返回一个完整的网页。其中的最主要的方面就是利用它来传递和发送信息,更好的展现。

伴着蓬勃发展的旅游业,各地的旅行社也应运而生。它们的产生为人们的出游提供了很多方便,只要游客提出要求,旅行社会尽量为他们考虑,合理安排好各条线路和相关行程。当然,新兴的行业虽然有很强的生命力,但是在上述的服务中仍存在很多不足。

计算机科学日渐成熟,它已进入人类社会的各个领域并发挥着越来越重要的作用,用手工统计数据的工作方式正逐步离我们远去。丰富多彩的旅游景点需要一个合适的管理系统来规范,使得各项工作都能有条有理的进行。旅游管理信息系统正想改善那些原有的不足,更好的为游客提供更直接的交流平台,使更好的协调不同的意见。它能提供给管理者一个简单的界面来进行计划和安排。

旅游管理信息系统就是利用计算机网络向游客们发布旅游信息;游客通过计算机网络留言来发表自己的意见和建议。该系统在时空方面没有限制,可以实现远程的信息查询,预订或交流。

1.3 旅游管理信息系统开发现状

随着社会的发展,旅游业已成为全球经济中发展势头最强劲和规模最大的产业之一。因此,旅游业已经成为我国拉动经济增长、扩大就业渠道的重要的服务行业之一。

旅游管理信息系统也随着旅游业发展逐渐成为旅游信息管理的主要途径。目前旅游信息系统已基本形成了成功的商业框架。如何让旅游管理信息系统成为企业资源计划、客户关系管理及供应链管理的中枢神经,实现网络对旅游业的整合,将原来市场分散的利润点集中起来,获得一种成功的旅游管理信息系统运行模式,是旅游业发展中最重要的一个环节。

2 开发工具简介

2.1 JSP介绍

Java Server Page或简称为JSP,是由Sun公司在Java语言上开发出来的一种动态网页制作技术。开发人员可以基于它提供的SERVER框架综合使用 HTML,XML,JAVA语言以及其他脚本语言创建和维护动态网页,尤其是一些基于B/S的管理信息系统。作为JavaTM 技术的一部分,JSP能够快速的开发出基于所有Web服务器和应用服务器环境,独立于平台的应用程序,而且具有非常强的可伸缩性。

JSP程序语言具有许多优秀的特性,用其设计应用程序时有两个基本特点;可视化设计和事件驱动编程。

2

河北科技师范学院2013届本科毕业设计

JSP ( Java Server Pages)是由Sun公司在java语言上开发出来的一种动态网页制作技术,JSP规范是Web服务器、应用服务器、交易系统、以及开发工具供应商间广泛合作的结果,使您可以将网页中的动态部分和静态的HTML相分离[2]。

(1)将内容的生成和显示进行分离

使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。

(2)强调可重用的组件

绝大多数JSP页面信赖于可重用的、跨平台的组件(JavaBeans或者Enterprise JavaBeans TM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,井使得这些组件为更多的使用者或者客户团体所使用。

(3)采用标识简化页面开发

Web页面开发人员不会都是熟悉脚本语言的编程人员。JSP技术封装了许多功能,这些功能是在生成与JSP相关的XML标识的动态内容时所需要的。标准的JSP标识能够访问和实例化JavaBeans组件、设置或者检索组件属性、下载Applet,以及执行用其他方法更难于编码和耗时的功能[3]。

(4)健壮性与安全性

由于JSP页面的内置脚本语言是基于Java编程语言的,且都被编译为JavaServlet,它就具有Java技术的所有好处,包括健壮的存储管理和安全性。

(5)良好的移植性

作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。(6)企业级的扩展性和性能

当JSP与Java2平台,企业版(J2EE)和Enterprise Java Beans等技术联系时,JSP页面将提供企业级的扩展性和性能,这对于企业的web应用是必需的。

因此,实现本系统JSP是一个相对较好的选择。

2.2 数据库的介绍

SQL全称是“结构化查询语言(Structured Query Language)”,最早的是IBM的圣约瑟研究实验室为其关系数据库管理系统SYSTEM R开发的一种查询语言,它的前身是SQUARE语言。SQL语言结构简洁,功能强大,简单易学,所以自从IBM公司1981年推出以来,SQL语言,得到了广泛的应用。

3

河北科技师范学院2013届本科毕业设计

2.3 关系型数据库的实现

旅游管理信息系统数据库的实现拟采用SQL Server 2005+JDBC驱动的方式,SQL SERVER2005是关系数据库开发工具,JDBC(Java Database Connectivity)是用于执行SQL语句的应用程序接口。

JDBC的出现使增强了Java程序对各种数据库的访问能力。它为Java定义了一个“调用级”(cal-level)的SQL接口。这使开发人员可以将SQL语句传递给给数据库,JDBC的体系结构如图2-1所示。

应用程序 数据库 应用程序 JDBC API JDBC Driver Manager 数据库驱动 数据库 应用程序 数据库

图2-1 JDBC体系结构

2.4 旅游系统软件开发方法

目前比较成熟的管理信息系统开发方法有:生命周期法、原型法、面向对象法等。 生命周期法:把一个信息系统从其提出、分析、设计和使用,直到停止使用的整个生存期视为一个生命周期。整个生命周期划分为五个主要工作阶段:可行性分析阶段、系统分析阶段、系统设计阶段、系统实施阶段和系统运行、维护与评价阶段。通常采用结构化系统分析和系统设计方法,自上而下分析、设计、强调开发过程的整体性和全局性;开发过程在时间上基本按阶段进行,任务明确;结合用户需求进行开发;开发周期长,维护不方便。适用于开发需求较明确固定的信息系统。

原型法:是系统开发者在初步了解用户需求的基础上,开发出能实现系统最基本功能的一个原型,再根据用户对原型使用与评价的意见,提出修改方案,修改完善原型,如此反复多次,直到得到用户满意的最终系统为止。开发过程以用户为中心,开发周期短。适用于开发需求不够明确或不断变化的软件。

面向对象法:以类,类的继承,聚集等概念描述客观事物以及联系。为管理信息系统的开发提供了全新的思路,面向对象方法以对象为中心。其特征主要有模块性,继承性和类比性,动态连接性。

其中原刑法是近几年发展起来的一种开发方法,该方法从一个初始信息要求的集合出发,在发展中逐步完善信息系统,本系统采用的是原型法。

使用原型法开发大体有以下几个步骤:

1、确定系统需求。其中包括系统的应用范围、系统开发的经费估算等。

4

河北科技师范学院2013届本科毕业设计

2、设计初始原型。包括确定需求和开发工作模型,例如屏幕格式、功能菜单、报表格式以及对关键数据和功能的说明等。

3、对初始原型进行需求迭代,不断进行修正或改进,直至得到一个用户满意的原型,从而终止原型迭代过程。

4、如果需要,可写出系统必要成分的严格、详细的说明(如将需求转化为报表)。 5、原型效果考察。考察用户新加入的需求信息和组成成分的严格说明信息,看其对原型效果的影响,是否影响到原型的有效性,如果导致原型失败,应加以修正和改进。

原型法的生命周期提供了一种完整的、灵活的、近于动态的需求定义技术。它综合了所有提出的必要需求,建立原型就近似于预先需求的规格说明。对应于原型的工作模型可以进行必要的剪裁和组织,以便更接近目标系统。它可以综合用户、领导和原型开发人员的各方需求[6]。

3 系统的总体设计

3.1 系统分析

计算机系统工程是指与构造基于计算机系统有关的过程、方法和技术。它是一种问题求解活动。计算机系统工程师从用户定义的目标和约束条件出发,给出系统功能、性能、接口、设计约束条件和信息结构的描述,并将它们分配到各系统要素予以实现。

3.1.1 可行性分析

可行性分析可以避免人力、物力和才力上的浪费,可行性研究与风险分析互相关联。项目风险越大,软件越难开发。可行性研究包括经济可行性、技术可行性、法律可行性和开发方案的选择性。

以下从四个方面对旅游管理信息系统建设进行可行性分析:技术可行性、经济可行性、操作可行性和法律可行性。

1、技术可行性

为了确定现有技术能否实现目标系统。JSP自带的工具、Microsoft SQL SERVER拥有的表操作(建立、修改、删除等)协调操作完全可以实现本系统要求达到的各种功能。

旅游管理信息系统建设把导游和游客的信息贮存在数据库里,然后经过数据的抽取和分类,显示在需要的窗口内,如图3-1所示。

5

河北科技师范学院2013届本科毕业设计

图3-1 数据信息发布图

2、经济可行性

为了确定待开发的系统的经济效益能否超过开发成本。旅游管理信息系统建设是一个不会直接产生经济效益的投资,但是能够节省人力资源,从而节约成本,提高效率。

3、操作可行性

旅游管理信息系统建设是基于JSP 平台

JSP是的简单易用使它对于一个小型的数据库处理具有很明显的优点。所以丛操作可行性方面是可行的。

4、法律可行性

本系统完全是本人在指导老师的指导下独立完成的,故不存在侵权行为或者由于本系统带来的法律纠纷等问题,所以在法律上是可行的。

所以从上面四点出发,可以确定系统分析是可行的。

3.1.2 需求分析

需求分析是存在于系统分析和设计阶段之间的十分重要的桥梁。一方面,需求分析以系统规格说明和项目规划作为分析活动的基本出发点,并从软件角度对他们进行检查和调整。另一方面,需求规格说明又是软件设计、实现、测试,直至维护的主要基础。

需求分析基于可行性分析,只不过是在抽象的层次上进行的分析与设计过程。需求分析的结果是软件开发的基础,必须仔细验证它的正确性,开发人员必须和用户取得完全一致的意见,需求分析的文档应该被用户所确认[7]。为了更准确、更具体地确定用户的需求,往往需要构造出目标系统的原型,供用户试用以取得实践。良好的分析活动有助于避免或尽早剔除早期错误,从而提高软件生产率,降低开发成本,改进软件质量[8]。

需求分析的基本任务是确定目标系统必须具备那些功能,准确完整的体现用户的要求。旅游管理信息系统建设的需求分析:

1、采用JSP开发工具;

2、合理设定用户,控制用户使用权限。让系统可以分辨出非用户和用户,普通用户和超级用户(即管理员)。

3、管理人员可以随时根据实际情况修改数据库中的数据资料,使信息的更新及时、准确;

6

河北科技师范学院2013届本科毕业设计

4、旅游的信息可以由管理人员添加和删除,普通用户只可以查看。

5、景点信息里某些新线路的开发,或旧线路的修改和删除由管理人员按实际要求处理。

6、用户的个人资料可以方便地增加、删除和修改。

7、提供的特价路线信息让用户可以一目了然,清楚了解最新讯息。

3.2 问题定义

问题定义是整个软件开发的第一步,在这个阶段主要问题是:“要解决的项目问题是什么?”只有弄懂了要解决问题,才能够合理的分析和解决问题,并为以后的总体设计和详细设计打下坚实的基础。根据软件工程,前期的问题定义占软件开发很大部分,是很重要的环节。

软件项目定义阶段的任务有四项。1、制定软件项目规划。包括:描述软件的工作范围、进行风险分析、提出开发软件所需资源清单、估算软件项目的成本和进度,并易成本和进度估算为基础对软件项目进行可行性论证。最后,生成经过项目管理组织评审的软件项目规划。2、软件需求分析和定义。确定软件的功能和性能,详细定义软件系统要素。定义软件需求有两种方法。一种是采用形式化的信息分析方法。建立信息流和信息结构模型,然后将这些模型扩展为软件规格说明。另一种是为软件开发原型,软件工程师和用户一起对原型进行评审和修改,从二获得用户满意的需求定义信息。3、确定软件性能和资源约束,这对软件设计特性会产生直接的影响。4、为软件要素定义验收标准,它也是制定软件测试计划的基础[9]。

3.2.1 设计目的和任务

1、向现实需求实现通用旅游管理信息系统建设

设计出的旅游管理信息系统可以满足绝大多数旅游者的需求,而不仅仅局限于某一个旅游者的使用。

2、学习和掌握JSP开发工具,深刻体会面向对象编程的方法和思想

能熟练使用JSP,并成功编出毕业设计项目。依靠其可视化的面向对象编程以及大量的控件来设计旅游管理信息系统建设的界面和实现各种功能。

3、掌握软件开发环境和操作系统

本软件的开发是在任何的环境下进行的。能够熟练操作和使用WINDOWS操作系统和JSP编程工具,以及简单处理在使用中遇到的问题。

4、熟悉软件开发的流程

按照软件工程的思想和方法,进行旅游管理信息系统建设的需求分析、系统设计、详细设计、编码、测试和维护等等。

7

河北科技师范学院2013届本科毕业设计

同时参考和学习软件工程新途径:面向对象方法学引论、分析、设计、实现等。以便学习跟上和了解计算机编程的心思想和新潮流。

5、用户界面友好、清晰、易学易用,易于维护。

3.2.2 设计要求

1、合理设定用户,控制用户使用权限。

2、管理人员可以随时根据实际情况修改数据库中的数据资料,使信息的更新及时、准确;

3、提供的特价路线信息让游客可以一目了然;

4、查找功能方便管理人员了解各条路线的游客统计,便于统一管理;

本设计是一个旅游管理信息系统建设,要求简单的信息添加、删除、修改等,及时进行数据的查询和管理。该软件以Windows环境,JSP工具和Microsoft SQL SERVER 数据库设计[10]。

3.3 系统设计

总体设计的基本目的就是回答“概括地说,系统应该如何实现?” 这个问题,因此,总体设计又称为概要设计或初步设计。本设计阶段的基本目的是用比较抽象概括的方式确定系统如何完成预定的任务,也就是说,总体设计阶段主要由两个小阶段组成。首先需要进行系统设计,然后进行软件结构设计,确定软件由那些模块组成以及这些模块之间的动态调用关系。层次图和结构图是描绘软件结构的常用工具。

在进行软件结构设计时,应该遵循的最主要的原理是模块独立原理,也就是说,软件应该由一组完成相对独立的子功能的模块组成,这些模块彼此之间的接口关系应该尽量简单。

在进行软件结构设计时一种有效的方法是,由抽象到具体地分析和构造出软件的层次结构。自顶而下逐步求精是进行软件结构设计的常用途径;但是,如果已经有了详细的数据流图,也可以使用面向数据流的设计方法,用形式化的方法由数据流图影射出软件结构。

数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建设中的核心技术,具体说,数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。

通过这个阶段的工作将划分出组成系统的物理元素—程序,文件,数据库,人工过程和文档等。

耦合:是对一个软件结构内不同模块之间互连程度的度量。

8

河北科技师范学院2013届本科毕业设计

内聚:标志一个模块内各个元素彼此结合的紧密程度,它是信息隐蔽和局部化概念的自然扩展。本系统的总体设计如下:

1、旅游管理信息系统建设的开发首先需要设计数据库。根据需求分析得到的结果,用Microsoft SQL SERVER 表设计器设计好结构表后添加到数据库中[11]。为了使用方便,共创建了4个数据表。

2、为了完成用户的需求,共设计7个窗口(登录窗口、主窗口、导游信息窗口、特价路线信息窗口、景点信息窗口、用户权限窗口和游客信息查询窗口)。

1)登录系统:用户可以通过输入用户名和密码进行身份验证进入主界面,如图3-2所示。

图3-2 登录系统图 身份验证 输入用户和密码 N Y 进入主界面 2)系统模块:旅游感力系统总共分为旅游、热点、线路、用户几大模块,如图3-3所示。

图3-3 系统模块图

旅游热点线路用户旅游信息管理系统 3.4 系统E-R图及数据库表的结构 3.4.1 E-R模型简介

数据库设计中常用E-R图来描绘数据库的结构。E-R模型中包含“实体”、“联系”和“属性”等三个基本成分。

9

河北科技师范学院2013届本科毕业设计

3.4.2 系统总体E-R图

系统总体E-R图如图3-4所示。

用户名 密码 性别 年龄 用户 用户名 预定 用户 信息 线路 日期 价格 预定 详细 热点 普通 属于 线路 景点 时间 价格 联系人

图3-4 总体E-R图

1、各实体的属性图 用户=用户名+密码+权限

游客=身份证号码+姓名+年龄+性别+联系电话+旅游日期+参加的团队+备注 路线=路线+旅游信息+发团日期+价格+属性+终点+中点站 用户实体及属性:如图3-5所示。

用户名 用户 图3-5 用户实体图

密码 权限 2、路线实体及属性

10

河北科技师范学院2013届本科毕业设计

路线实体以及属性如图3-6所示:

发团日期 线路 路线 旅游信息 图3-6 路线实体图 价格 属性 3.4.3 数据表结构设计

根据系统的需要和实际操作的要求,详细如下: 1、用户信息表:如表3-1所示。主键:身份证号码

表3-1 用户信息表

字段名称 姓名 性别 年龄 联系电话 备注

数据类型 文本 文本 数字 文本 文本

字段大小 30 8 长整型 50 50

必填字段 是 否 否 是 否

2、线路信息表:如表3-2所示。

表3-2 线路信息表 字段名称 旅游信息 路线 价格 发团地点 发团时间 联系人

数据类型 文本 文本 数字 数字 数字 数字

11

字段大小 20 50 长整型 长整型 长整型 长整型

必填字段 是 是 否 否 否 否

河北科技师范学院2013届本科毕业设计

电话 数字 长整型 否

3、管理员登录日志:如表3-3所示。

表3-3 管理员登录日志表 字段名称 序号 管理员姓名 密码 登录时间 登录IP 操作结果

数据类型 数字 文本 文本 数字 数字 数字

字段大小 4 20 20 datatime 长整型 长整型

必填字段 否 是 是 否 否 否

4、票选线路管理:如表3-4所示。

表3-4 票选线路管理表

字段名称 序号 线路名称 好评 差评

数据类型 数字 文本 数字 数字

字段大小

4 100 datatime 长整型

允许为空 否 是 是 是

5、访客登录日志:如表3-5所示。

表3-5 访客登录日志表

字段名称 序号 姓名 Weburl Email bolgurl Email QQ 内容 添加时间 Email

数据类型 数字 文本 文本 文本 文本 文本 文本 文本 文本 文本

字段大小

4 100 datatime 100 100 100 20 100 100 40

允许为空 否 是 是 是 是 是 是 是 是 是

4 系统开发

12

河北科技师范学院2013届本科毕业设计

4.1 详细设计

详细设计阶段的最终目的是确定应该怎么具体地实现所要求的系统,这就是说,经过这个阶段的工作,应该得出对目标系统的精确论述,从而在编码阶段把这个描述直接翻译成用某种程序设计语言书写的程序。

1、为了满足旅游管理信息系统建设的使用要求,本系统用SQL SERVER 创建有4张表,分别是密码表、导游表、游客表以及旅游路线表。密码表的作用一是验证登录时的用户名和密码,二是判断用户的使用权限来启动或关闭某些按钮的操作;导游表的作用是存放导游的基本资料,便于及时查看;游客表的作用也是存放资料信息,随时可以添加记录,方便旅游管理信息系统的记录管理;旅游路线表中存放线路的具体信息,管理员可以根据具体的情况选择线路添加、修改和删除,游客可以通过自己的选择,迅速查处相关旅游胜地的路线资料[13]。

2、建立一个数据表,及时更新每星期推出的特价路线信息。 3、用户应用顺序为,如图4-1所示。

13

河北科技师范学院2013届本科毕业设计

登录窗口 主窗口 旅游咨询窗口 线路搜索窗口 热点线路窗口 用户权限窗口 信息窗口 旅游信息查询窗口 图4-1 用户应用顺序图

功能模块图:如图4-2所示。

旅游信息系统 登录 注册模块 查询模块 系统管理模块 权限管理模块 登录模块 注册模块 简单查询模块 复合查询模块 综合查询模块 增加旅游信息模块 修改旅游信息模块 增加系统维护员模块 删除系统用户模块 图4-2 功能模块图

14

河北科技师范学院2013届本科毕业设计

本系统较有特色的部分就是景点信息窗口和用户权限窗口,其中根据字段的长度来改变网页中单个表格的长度能使界面更和谐。

1、数据库连接 public class DBO {

private Connection conn; private Statement stmt;

public DBO() {}

/** 打开数据库 */ public void open() {try

conn =

private DataSource ds;

{Class.forName(\

DriverManager.getConnection(\=jsplywz\

}

/*关闭数据库,将连接返还给连接池*/ public void close() {try

{

// connMgr.freeConnection(\conn.close();

System.out.println (\释放连接\

stmt=conn.createStatement();

System.out.println(\打开数据库连接\

catch (Exception ex)

{System.err.println(\打开数据库时出错: \}

} catch (SQLException ex)

{System.err.println(\返还连接池出错: \}

}

/*执行查询*/

public ResultSet executeQuery(String sql) throws SQLException {

ResultSet rs = null; rs = stmt.executeQuery(sql);

15

河北科技师范学院2013届本科毕业设计

System.out.println (\执行查询\return rs;

执行增删改 */

}/** {

public int executeUpdate(String sql) throws SQLException

int ret = 0;

ret = stmt.executeUpdate(sql); System.out.println (\执行增删改\return ret;

}

/** 将SQL语句加入到批处理 */

public void addBatch(String sql) throws SQLException { }

/**执行批处理*/

public int [] executeBatch() throws SQLException {

boolean isAuto=conn.getAutoCommit(); conn.setAutoCommit(false);

int [] updateCounts = stmt.executeBatch(); conn.commit();

conn.setAutoCommit(isAuto); //conn.setAutoCommit(true); return updateCounts;

stmt.addBatch(sql);

// // }

public boolean getAutoCommit() throws SQLException { return conn.getAutoCommit();

}public void setAutoCommit(boolean auto) throws SQLException { } { } { }

conn.setAutoCommit(auto);

public void commit() throws SQLException conn.commit(); this.close();

public void rollBack() throws SQLException conn.rollback(); this.close(); }

private List list;

16

//

//

2、管理员登陆系统 public class AdminBean {

河北科技师范学院2013届本科毕业设计

private ResultSet rs = null; private int EVERYPAGENUM = 2; private int count = -1; private int qq = 0;

private String sql=\

private String sql2=\//声明时间变量 String

//分页查询登录日志

public void setEVERYPAGENUM(int EVERYPAGENUM){

this.EVERYPAGENUM=EVERYPAGENUM;

date=new

SimpleDateFormat(\

HH:mm:ss\

}

public int getMessageCount() { //得到信息总数 DBO dbo=new DBO(); dbo.open();

try { rs = dbo.executeQuery(sql); rs.next();

count = rs.getInt(1); return count;

} catch (SQLException ex) { ex.printStackTrace(); return -1; } finally { dbo.close(); } }

public int getPageCount() { //得到共多少页(根据每页要显示几条信息) if (count % EVERYPAGENUM == 0) { return count / EVERYPAGENUM; } else { return count / EVERYPAGENUM + 1; } }

public List getMessage(int page) { //得到每页要显示的信息 DBO dbo=new DBO(); dbo.open();

List list = new ArrayList();

17

河北科技师范学院2013届本科毕业设计

try { rs = dbo.executeQuery(sql2);

for (int i = 0; i < (page - 1) * EVERYPAGENUM; i++) { rs.next(); }

for (int t = 0; t < EVERYPAGENUM; t++) { if (rs.next()) { qq++;

List list2=new ArrayList(); list2.add(rs.getInt(\

list2.add(rs.getString(\list2.add(rs.getString(\list2.add(rs.getString(\list2.add(rs.getString(\list2.add(rs.getString(\list2.add(rs.getString(\list.add(list2);

} else { break; //减少空循环的时间 } }

4.2 模块功能实现

1、后台登录窗口

管理员输入用户名密码点确定后后,系统判断用户名是否存在。若用户名不存在,则提示出错信息,不能登陆后台;用户名正确但密码错误时,弹出密码错误信息;只有当用户名和密码都正确且匹配时,才能进入后台,进行系统维护和管理。管理员享有一切权力。后台登录如图4-3所示。

18

河北科技师范学院2013届本科毕业设计

图4-3 后台登录

2、用户登录:图4-4所示。

图4-4 用户登录

3、主界面

主界面提供了很多的按钮,只要你点击想要查看的窗口,就可以随意进入,其中的更改用户可以让你回到登录界面重新登录,重新判断用户的权限,如图4-5所示。

图4-5 主界面显示

此窗口中的信息添加,修改和删除都是只能由管理人员使用,一般用户只能查看翻阅基本资料。用户可以看到最新的信息,了解旅游地区的信息,如图4-6所示。

19

河北科技师范学院2013届本科毕业设计

图4-6 旅游详细信息

4、旅游线路信息窗口

此窗口是本系统最核心的设计,它提供给用户路线的选择和详细资料。你可以通过属性来选择。如果用户想更快地查到自己向往的旅游地点,也可以直接输入城市的名称,即可完成路线查找。若没有用户希望的旅游路线,旅游管理信息系统可以根据用户的要求,并结合导游、景点情况以及开发的前景预测适当新增或修改路线,尽量完成用户的愿望。当然,如果有的路线开发不合理,经过一段时间的试运营后可以删除,如图4-7所示。

20

河北科技师范学院2013届本科毕业设计

图4-7 旅游线路信息窗口

5、会员登录窗口

用户通过了解景点信息窗口中的路线,做出自己的选择,就可以把个人基本信息告诉旅游管理信息系统以便统一管理和相互的联系。旅游管理信息系统就可以及时与用户取得联系,商量响应处理地方法,如图会员登录4-8所示。

图4-8 会员登录界面

21

河北科技师范学院2013届本科毕业设计

4.3 程序流程图 4.3.1 程序设计

管理信息系统处理方式的合理选择,就是一个处理过程的设计问题。选择处理方式实际上就是根据系统的任务、目标和环境条件,合理地选择信息活动的形态及具体方法。

程序流程图又称为方框图。表示方法简明直观,是用来描述程序执行的逻辑过程的。它把程序的基本步骤归纳为:处理、判断、输入/输出、开始和结束等几个基本功能,并用不同的记号加以表示,从而描述程序的执行过程。

1、系统主程序流程图如图4-9所示。

启动程序 连接数据库 合法性检查 N Y Y 读取权限 用户 管理员 N 进入主界面 结束 图4-9 主程序流程图

2、子系统流程图如图4-10所示。

22

河北科技师范学院2013届本科毕业设计

进入 功能选择 旅游系统前后台各功能模块的选择操作 输入/输出操作信息 Y 是否继续 N 返回主界面 图4-10 子系统流程图

4.3.2 编程的过程及特色

本系统在主框架的模块上采用自顶向下的方式,把系统的功能按照模块化和逐步细分的方法分解到最小的控制。在界面的设计上采用面向对象的方式,先设计底层模块,把有共性的界面设计,功能放在底层模块统一处理。这样既保证了界面的统一性,减少了编程的工作量,同时也方便了修改。许多修改只要在底层模块统一完成,不必一一修改。

5 软件测试

所谓编码就是把软件设计的结果翻译成计算机可以“理解”的形式—用某种程序设计语言书写的程序。编码的目的是实现人和计算机的通信,指挥计算机按人的意志正确工作。系统测试是系统质量保证的主要活动之一,在系统开发的过程中,在各个阶段都有可能存在错误和缺陷[15]。通过测试是可以发现系统设计中存在的种种问题,并可以及时改正,避免在系统投入使用时才出现不必要的错误,从而导致不必要的损失。测试是质量保证一个砝码,它提供对系统规格说明、设计和编码的最终评审,是发现系统缺陷和错误的有力手段。

23

河北科技师范学院2013届本科毕业设计

5.1 安装说明

CPU:Intel Core 2 Duo 内存:4GB 硬盘:320G

5.2 软件测试

无论怎样强调软件的测试的重要性和它对软件可靠性的影响都不过分。测试的目的就是在软件投入生产性运行之前,尽可能多得发现软件中的错误。目前软件测试仍然使保证软件质量的关键步骤,它是对软件规格说明、设计和编码的最后复审。

在旅游管理信息系统建设的很多测试中,不断地发现自己设计中错误和不完善的地方,然后通过系统的提示再作相应的修改和完善。测试的确是软件开发人员设计的好帮手。

5.3 测试的目的及相关问题

软件测试分为几个部分:单元测试集中检查软件设计的最小单元——模块,包括程序测试,即发现程序中的代码错误,然后逐一解决;组装测试相当于联调,主要是考察模块间的接口和各模块之间的联系。这是一个持续的过程,可以在将组件加入某一项之前逐个的加以测试,也可以把项目连编成应用程序之后再进行测试。确认测试主要检查软件功能与用户的需求是否一致。在一般的情况下,这些步骤都被顺序地实现。

在测试和调试应用程序时,应注意以下问题: 1、程序设计者不应测试自己设计的程序;

2、测试用例的设计不仅要有合理的输入数据,还要有不合理的输出数据; 3、除了检查程序是否做完了它应做的事之外,还要检查它是否做完了它不应做的事。

在测试和调试应用程序后,系统应达到以下要求: 1、能较好的完成系统应具备的基本功能; 2、运行不会导致崩溃或产生错误信息; 3、在一般情况下操作正常;

4、在一定范围内,操作合理,或能提供适当的错误信息。

程序调试和组件测试设计和编码的过程中通过编译程序编译、软件错误信息的提供,才可以逐步修正错误,程序能够得到一步步的完善。

24

河北科技师范学院2013届本科毕业设计

5.4 测试过程

在完成旅游系统开发的过程后,为了使系统能够正确运行,对系统进行了测试,采取的方式是:

功能测试:为了保证每一个按钮能够实现系统设计的功能,现在已经对每一个按钮反复进行了确认操作,从而保证了按钮功能的正确实现。

性能测试:完成功能测试后,又对系统处理数据的速度和响应的时间进行了测试。不仅输入了大量的基本数据,还输入了错误数据来测试系统的异常处理能力。

综合测试:在以上测试的基础上对系统其他功能进行整体测试,依次来检验系统功能的正确性。

5.5 测试结果

初步认为系统在一般情况下运行正常,一定范围内操作合理,且能提供适当的错误信息,系统有一定的异常处理功能。总体来看,系统的稳定性和安全性都能够得到保障。因此整个系统的设计和实现基本上达到了预期的目标。

结 论

旅游管理信息系统是对现在比较流行的旅游市场进行详细调研后,确定了系统涉及的领域,进行了数据库设计、界面设计、Web应用层设计等,是一个具有实际应用意义的系统。本系统已实现功能如下:

1、用户注册、登录、权限验证等。

2、管理员查看用户基本信息,更改用户权限等。

3、站内旅游信息浏览,包括景点浏览,旅游社导航景点推荐、最新旅游新闻、站内公告的浏览和查看等。

4、站内检查功能:包括按景点名称、地理位置、旅游路线以及用户输入关键字对站内信息进行模糊检查和精确检索等。

5、在线留言功能。 6、旅游线路预定功能。

但本网站还有一些不足,主要针对以下几个方面:

1、系统的某些设计的可扩展性并不十分理想,在以后的系统维护过程中,需要使用重构方法对系统进行重构,使系统的设计日益趋于更强的可扩展性。

2、在开发和使用用户控件,以提高代码的重复使用率和运行效率方面欠佳,有待进一步改善。

25

河北科技师范学院2013届本科毕业设计

3、在功能实现方面,预订功能需求拓展,需要进一步完善和优化。

参考文献

[1] 王毅.JSP程序开发范例宝典[M].人民邮电出版社.2007

[2] 程志艳,张亮,马建红. JSP实用简明教程.清华大学出版社[M].2005 [3] 王国辉,牛强,李南南.JSP信息系统开发实例精选.机械工业出版社[M].2005 [4] Gary J.Bronson.Java for Engineers and Scientists[M].清华大学出版社 [5] 李国涛. SQL SERVER 2000数据库开发. 机械工业出版社[M].2004 [6] 王庆忠. JSP运行原理及其Windows下环境的实现.中国科技信[M].2005 [7] 周家地. DREAMWEAVER MA入门与提高.清华大学出版社[M].2006

[8] Bryan Burns等.计算机安全超级工具集.淸华大学出版社[M].2009:48-160 [9] 杨清.JavaScript快速入门.新时代出版社[M].2000

[10] 赵文靖.数据库系统基础教程.清华大学出版社[M].2001:49-50

[11] 周亚辉.Java数据库系统项目开发实践.北京科学出版社[M].2007:189-190 [12] 黄开枝,冉晓旻.SQL实用教程第二版.清华大学出版社[M].2004: [13] 210-211(美)Schildt,H.Java:the Complete Reference[M].2006:579-582 [14] (美)Flanagan,D.JavaScript:The Definitive Guide[M].2001:124-126 [15] Arnold Doray.JSP Technology.ApressL.P[M].2005:54-56

致 谢

本次毕业设计是第一次独立开发一套比较完整的软件程序,在开发过程中,柴朝华老师悉心的指导,对面向对象软件设计有了一个较深的认识。在设计的过程中,针对课题,将四年所学得基础知识及专业知识有机的结合起来,并且在实践中加以应用。程序的设计过程并非一帆风顺,每每出现这样或那样问题时,柴老师都会尽力帮助,使设计进程不被打断。在此,由衷的向柴老师表示感谢。同时,还有很多同学也一直帮助解决不少难题,在此,对他们也表示最诚挚的谢意。

附录 外文文献及译文

26

河北科技师范学院2013届本科毕业设计

Jsp Technology

JSP (JAVA SERVER PAGES) was initiated by Sun Microsystems Inc., along with a number of companies involved in the establishment of a dynamic web of technical standards, its dynamic page-building has its strong and other special functions, he used to support the creation of an inter - Cross-platform Web server and dynamic pages. JSP with Microsoft's Active Server Pages (ASP) match, but the use of JSP is similar to the HTML tags and Java code fragment, rather than using VBScript. When you use ASP to provide support for the local Web server (such as Apache or Netscape server), you may want to consider using the JSP.

JavaServer Pages technology allows web developers and designers are very easy to create and maintain dynamic web pages, especially the current business systems. JavaTM technology as a part of, JSP quickly developed based on the web, platform-independent applications. JSP user interface to the system from the content to leave the middle so that designers can not change the underlying dynamic content on the premise of the entire page layout changes.

So what does it JavaServer Page? In short, a JSP page is included in the HTML pages to generate dynamic content of the application executable code. This application may contain JavaBeanTM, JDBCTM object, Enterprise Java BeanTM (EJB) and Remote Method Invocation (RMI) objects, all can be part of a very easy from the JSP page to visit. For example, a JSP page can contain HTML code shown in static text and images can also be a call to JDBC access to database objects; when the page display to the user interface, which will include static HTML content from the database and find the corresponding dynamic Information.

In the JSP page, the user interface is necessary and applications can be considered separately from the web designers and developers a very convenient between the implementation of the mandate. It also allows developers to build flexible code, which is very easy to update and re-use. As the JSP page as needed to automatically compile, web designers no need to recompile the application logic will be able to change the code statements. This also makes JSP and Java servlet (it is a function of the expansion of JavaSERVER Pages) compared to a more flexible and dynamic generation of web content.

Sun published in the official JSP (JavaServer Pages), this new Web application development technology quickly attracted attention. JSP to create a highly dynamic Web application provides a unique development environment. In accordance with Sun's view, JSP be able to adapt to the market, including the Apache WebServer, IIS4.0, 85% of the server

27

河北科技师范学院2013届本科毕业设计

products. Even if your ASP or PHP, CGI passion, we believe that concern the development of JSP is still necessary, which is based on the comparative analysis.

JSP and Microsoft's ASP, PHP is very similar to the technology. ASP is a programming language like VBScript scripting language, JSP using Java, this is the most obvious difference between them. In addition, ASP, PHP and JSP has a more essentially different: the two languages with the engine completely different approach embedded in the page code. ASP in the next, VBScript code was explained that implementation of the ASP engine; in the JSP, the code was compiled by the Servlet implementation of the Java Virtual Machine, which operate only in the compilation of JSP pages for the first time when the request. Facts have proved that, Java Servlet is a Web application development framework for the ideal. JSP to Servlet technology, but also in many ways been improved. The use of cross-platform running JavaBean components, JSP for dealing with separation of logic and style show provides a superior solution. JSP is bound to become a dynamic web technology to other powerful competitors. JSP Technical Characteristics

1. The content will be generated and displayed for separation

The use of JSP technology, Web page developers can use HTML or XML format and logo design to the final page. JSP logo or the use of bound feet would have to generate dynamic content on the page. Content generated by the logic of the logo and packaging JavaBeans components, and tied up in a small script, the script all running on the server side. If the core logic is packaged into a logo and Beans, then others, such as managers and Web page designers, editors and be able to use the JSP page, without affecting the content of the generation.

On the server side, JSP engine explained JSP script logo and small, generated by the contents of the request (for example, by visiting JavaBeans components, the use of technology JDBCTM access the database, or file that contains), and the results will be in HTML (or XML) in the form of the page Sent back to the browser. This will help authors to protect their code without any guarantee that the HTML-based Web browser, full availability.

2. Emphasis on reusable components

The vast majority of JSP pages rely on reusable, cross-platform components (JavaBeans or Enterprise JavaBeansTM components) to carry out the required application is more complex to deal with. Developers to share and exchange the implementation of the general operation of the components, or components to make them more user or customer groups used. Component-based approach to accelerate the overall development process and make all

28

河北科技师范学院2013届本科毕业设计

kinds of organizations in their existing skills to develop and optimize the results of efforts to strike a balance.

3. Logo used to simplify the development of the page

Web page developers are not familiar with the scripting language programmers. JavaServer Page technology package a number of functions in easy-to-use, XML and JSP related to the identification of dynamic content generation needs.

JSP standard of identity and access to examples of JavaBeans components, or set up to retrieve component properties, to download Applet, as well as in other ways more difficult and time-consuming coding. Through the development of customized ID database, JSP technology can be extended. In the future, third-party developers and others can be used to create their own logo library. This Web page developers can use familiar tools and the same logo as the implementation of the specific features of the components to work.

JSP technology can easily be integrated into a variety of applications in architecture to take advantage of existing tools and techniques, and can be extended to support enterprise-class distributed applications. Use of Java technology as part of the family, as well as the Java 2 (Enterprise Architecture) as an integral part of, JSP technology can support a high degree of complex Web-based applications.

JSP page as a result of the built-in scripting language is based on the Java programming language, and all JSP pages have been compiled into Java Servlet, JSP on the page with all the benefits of Java technology, including robust storage management and security.

As part of the Java platform, JSP have prepared a Java programming language, running around characteristics. As more and more suppliers will be added to the JSP support their products, you can use their own choice of servers and tools, or tools to change the server does not affect the current application.

29

河北科技师范学院2013届本科毕业设计

JSP技术

JSP(JAVA SERVER PAGES)是由Sun Microsystems 公司倡导、许多公司参与一起建立的一种动态网页技术标准,其在动态网页的建设中有其强大而别特的功能,他主要用于创建可支持跨平台及跨Web服务器的动态网页。JSP可与微软的Active Server Pages (ASP)相媲美,但JSP使用的是类似于HTML的标记和Java 代码片段而不是用VBScript。当你使用不提供ASP本地支持的Web服务器(例如 Apache或Netscape服务器)时,你就可以考虑使用JSP了。

Java Server Pages技术可以让web开发人员和设计人员非常容易的创建和维护动态网页,特别是目前的商业系统。作为JavaTM技术的一部分,JSP能够快速开发出基于web独立平台的应用程序。JSP 把用户界面从系统内容中分离开来,使得设计人员能够在不改变底层动态内容的前提下改变整个网页布局。

那么什么是Java Server Page呢?简单的说,一个JSP网页就是在HTML网页中包含了能够生成动态内容的可执行应用程序代码。此应用程序可能包含JavaBeanTM,JDBCTM对象,Enterprise Java BeanTM (E J B )和Remote Method Invocation (RMI)对象,所有的部分都可以非常容易的从JSP网页上访问到。例如,一个JSP网页可以包含 HTML代码所显示的静态文本和图像,也可以调用一个JDBC对象来访问数据库;当网页显示到用户界面上以后,它将包含静态HTML内容和从数据库中找到相应的动态信息。

用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。 JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。

JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。 JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。

Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。

JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java

30

河北科技师范学院2013届本科毕业设计

Servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。

在JSP网页中,要把用户界面和应用程序分开可以考虑在网页设计人员和开发人员之间执行一个非常方便的授权任务。它也允许开发人员去建立灵活的代码,从而非常容易的进行更新和重复利用。由于JSP网页能够根据需要自动进行编译,web设计人员无须重新编译应用程序逻辑就可以改变表述代码。这也使得JSP与Java servlet(它是Java SERVER Pages功能的扩展)相比成为一种可以更灵活生成动态web内容的方法。

在 Sun 正式发布 JSP(JavaServer Pages) 之后,这种新的 Web 应用开发技术很快引起了人们的关注。JSP 为创建高度动态的 Web 应用提供了一个独特的开发环境。按照 Sun 的说法,JSP 能够适应市场上包括 Apache WebServer 、IIS4.0 在内的 85% 的服务器产品。即使您对 ASP或PHP、CGI 一往情深,认为,关注 JSP 的发展仍旧很有必要,这是基于以下的比较分析。

JSP 与 Microsoft 的 ASP、PHP 技术非常相似。ASP 的编程语言是 VBScript 之类的脚本语言,JSP 使用的是 Java,这是他们最明显的区别。此外,ASP、PHP 与 JSP 还有一个更为本质的区别:两种语言引擎用完全不同的方式处理页面中嵌入的程序代码。在 ASP 下,VBScript 代码被 ASP 引擎解释执行;在 JSP 下,代码被编译成 Servlet 并由 Java 虚拟机执行,这种编译操作仅在对 JSP 页面的第一次请求时发生。 事实证明,Java Servlet 是一种开发 Web应用的理想构架。JSP 以 Servlet 技术为基础,又在许多方面作了改进。利用跨平台运行的 JavaBean 组件,JSP为分离处理逻辑与显示样式提供了卓越的解决方案。JSP必将成为其它动态网页技术的有力竞争者。

JSP技术特点

1.将内容的生成和显示进行分离

使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和Beans中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。

在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBCTM技术访问数据库,或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。

2.强调可重用的组件

绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者Enterprise Java Beans TM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和

31

河北科技师范学院2013届本科毕业设计

交换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。

3.采用标识简化页面开发

Web页面开发人员不会都是熟悉脚本语言的编程人员。JavaServer Page技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。

标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。通过开发定制化标识库,JSP技术是可以扩展的。今后,第三方开发人员和其他人员可以为常用功能创建自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来工作。

JSP技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且扩展到能够支持企业级的分布式应用。作为采用Java技术家族的一部分,以及Java 2(企业版体系结构)的一个组成部分,JSP技术能够支持高度复杂的基于Web的应用。

由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译成为Java Servlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。

作为Java平台的一部分,JSP拥有Java编程语言一次编写,各处运行的特点。随着越来越多的供应商将JSP支持添加到他们的产品中,您可以使用自己所选择的服务器和工具,更改工具或服务器并不影响当前的应用。

32

本文来源:https://www.bwwdw.com/article/s68p.html

Top