




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要旅游网站建设是面向现实需求的一个实用系统。其设计的目的是为游客和旅游网站提供一个友好的、直接的交流平台。本系统主要分为六大模块:旅游咨询信息、旅游线路信息、热点旅游线路信息、线路查询、留言信息以及权限管理。该系统的主要功能:提供给管理者一个简单的界面,可以合理计划安排导游的工作和及时了解游客的要求和信息;提供给游客一个清新的界面选择自己向往的旅游胜地。本系统采用JSP进行开发,结合SQLSEVER来创建数据库和程序跟踪与管理信息。本系统的设计过程完全按照软件工程的要求开发的,主要分为以下几个步骤:首先进行可行性研究;第二步进行详细调查,需求分析;第三步进行系统总体结构设计,完成系统所需的数据库设计;第四步进行系统详细设计,最后进行软件编码和系统测试。关键词:总体设计;数据库设计;详细设计;JSP;SQLSERVERAbstractThetravelingwebsiteconstructionisfacestherealisticdemandanutilitysystem.Itsdesign'sgoalisinafriendlywayprovidesoneforthetouristandthetravelingwebsite,thedirectexchangeplatform.Thissystemmainlydividesintosixbigmodules:Travelingconsultationinformation,touristrouteinformation,hotspottouristrouteinformation,lineinquiry,messageinformationaswellasjurisdictionmanagement.Thissystem'smajorfunction:Providesforthesuperintendentasimplecontactsurface,mayplanreasonablyarrangestourguide'sworkandunderstandstourist'srequestandtheinformationpromptly;Providestouristattractionwhichafreshcontactsurfacechoosesitselfforthetouristtoyearn.ThissystemusesJSPtocarryonthedevelopment,unifiesSQLSEVERtofoundthedatabaseandtheprogramtrackingandthemanagementinformation.Thissystem'sdesignprocessdeferstothesoftwareengineeringcompletelytherequestdevelopment,mainlydividesintothefollowingseveralsteps:Firstconductsthefeasibilitystudy;Secondstepcarriesonthecloseinvestigation,thedemandanalysis;Thirdstepcarriesonthesystemgrossstructuredesign,completesdatabasedesignwhichthesystemneeds;Fourthstepcarriesonthesystemdetaileddesign,finallycarriesonthesoftwarecodeandthesystemtest.Keyword:SystemdesignDatabasedesignDetaileddesignJSPSQLSEVER目录摘要 1Abstract 21.绪论 41.1选题背景 51.2选题依据 51.3旅游系统现状 62.JSP软件介绍 72.1JSP介绍 72.2JSP版本简介 72.3JSP语言的基本特点 82.3.1可视化设计 92.3.2事件驱动编程 102.4数据库的介绍 102.5关系型数据库的实现 112.5.1JDBC数据访问接口 122.5.2 JDBC的体系结构 122.5.3 JDBC访问后台数据库的技术实现方法 132.6旅游系统软件开发方法 143.项目定义 153.1系统分析 153.2问题定义 153.2.1设计目的和任务 163.2.2设计要求 163.3可行性分析 173.4需求分析 184.系统开发 204.1系统设计 204.2本系统的总体设计 214.3详细设计 224.4、E-R模型简介 244.5、本系统的E-R图及数据库表的结构 254.6模块功能实现 284.7程序流程图 324.7.1程序设计 324.7.2编程的过程及特色 345.软件编码与测试 355.1程序编码 355.2安装说明 355.3软件测试 355.4测试的目的及相关问题 365.5测试过程 375.6测试结果 376.问题解决过程及体会 38致谢 39参考文献 401.绪论随着社会发展、工业进步,近年来人民的生活水平日益提高,消费结构也发生了巨大的变化。人们的生活不再只局限于简单地满足温饱,越来越多的人开始注重生活的质量,即身体素质和精神文化素质的同步提高。同时,国家也积极鼓励人们利用节假日外出旅游,游览各地的美丽景色,了解那里的人文地理和风土人情。这样一方面可以锻炼和提高全民素质,一方面还可以增加国家旅游财政方面的收入,利国利民。伴着蓬勃发展的旅游业,各种的旅游网站也应运而生。它们的产生为人们的出游提供了很多方便,只要游客提出要求,旅游网站会尽量为他们考虑,合理安排好各条路线和相关行程。当然,新兴的行业虽然有很强的生命力,但是在上述的服务中仍存在很多的不足。计算机科学日渐成熟,它已进入人类社会的各个领域并发挥着越来越重要的作用,用手工统计数据资料的工作方式正逐步离我们远去。丰富多彩的旅游景点需要一个合适的管理系统来规范,使得各项工作都能有条有理地进行。本旅游网站正是想改善那些原有的不足,更好的为游客提供直接交流的平台,更好地协调不同的意见。它能提供给管理者一个简单的界面可以合理计划安排导游的工作和及时了解游客的要求和信息;它还能提供给游客一个清新友好的界面选择自己向往的旅游胜地。旅游业具有“无烟产业”和“永远的朝阳产业”的美称,它已经和石油业、汽车业并列为世界三大产业。改革开放以来,我国的旅游业有了非常迅速的发展,随着市场经济的发展和人民生活水平的进一步提高,人们的旅游热情大为焕发,对旅游消费的需求也进一步上升,旅游业在国民经济中的地位和作用便越来越重要。旅游网站比旅游企业更有优势。相比传统旅游企业,旅游网站信息更丰富、经营方式更合理,游客可在网站里收集文字、图片、游记、评论以及目的地的景点、食宿和交通等详尽的信息,还可通过链接和搜索引擎带你漫游相关网站。由于旅游网站可以打破地域的限制,可以最大限度地将各种旅游资源以最经济的方式结合在一起,同时无店铺经营也将有助于降低成本,使旅游资源的所有者和消费者都得到益处。旅游服务的无形性也使其更适合网上销售。1.1选题背景网上信息的发布由于其及时性,方便性等诸多的优点被越来越多的人们所接受。旅行社作为一个为旅客提供旅行服务的行业,其发布和更新信息的速度将直接的影响到企业的前景。目前,我国旅游业正处于高度发展状态。越来越多的人在假日里选择出游作为放松自己身心的手段。跟随网络的普及和发展,人们开始习惯性的在做某事之前先网络上浏览一下相关内容,找一些相关的信息。作为一个旅行社,如果能够帮助游客实现对景点的了解,推出相应的线路信息供游客们选择,实现在线的预订线路,无疑能获得较多的市场,并且让游客们充分享受旅游的乐趣。1.2选题依据随着国内互联网的发展,旅游业也成为网上的热点主题,旅游类电子商务站点也纷纷建立。不过许多网站的内容还只限于旅游信息的发布和介绍,而互联网与旅游业的结合发展显然不应局限于此。用户不再满足于通过浏览器看到静态页面,而是希望能根据要求生成更加灵活的、生动的动态页面。动态网页包含交互功能,动态网页的特点有:以数据库技术为基础,可以大大降低网站维护的工作量;采用动态网页技术的网站可以实现更多的功能,如管理员用户登录、后台管理等功能;不是独立存在于服务器的网页文件,只有当用户请求服务器才返回一个完整的网页。其中的最主要的方面就是利用它来传递和发送信息,更好的展现自我。我的旅游网就是利用计算机网络向游客们发布旅游信息;游客通过计算机网络留言来发表自己的意见和建议。旅游网站在时空方面没有限制,可以实现远程的信息查询,预订或交流。1.3旅游系统现状随着社会的发展,旅游业已成为全球经济中发展势头最强劲和规模最大的产业之一。旅游业在城市经济发展中的产业地位、经济作用逐步增强,旅游业对城市经济的推动性、社会就业的带动力、以及对文化与环境的促进作用日益显现。旅游业已成为中国经济发展的支柱性产业之一。旅游网站也随着旅游业的发展而逐渐成为旅游信息管理的主要途径。目前旅游网站已基本形成了成功的商业框架。如何利用网络的巨大潜力将企业的核心业务流程、客户关系管理等都延伸到网上,使产品和服务更贴近用户,让旅游信息网成为企业资源计划、客户关系管理及供应链管理的中枢神经,实现网络对旅游业的整合,将原来市场分散的利润点集中起来,获得一种成功的旅游网站运行模式,是目前旅游业发展中最重要的一个环节。2.JSP软件介绍2.1JSP介绍“JSP”指的是JAVASERVERPAGE语言,一种在计算技术发展历史上应用得最为广泛的语言。JSP在原有JAVA语言的基础上进一步发展,至今包含了数百条语句、函数及关键词。专业人员可以用JSP实现其它任何Windows编程语言的功能,而初学者只要掌握几个关键词就可以建立实用的应用程序。从开发个人或小组使用的小工具,到大型企业应用系统,甚至通过Internet的遍及全球分布式应用程序,都可在JSP提供的工具中各取所需。1.数据访问特性允许对包括SQLServer和其它企业数据库在内的大部分数据库格式建立数据库和前端应用程序,以及可调整的服务器端部件。2.有了JDBC技术就可使用其它应用程序提供的功能,甚至可直接使用JSP或JSPE创建的应用程序和对象。3.Internet能力强大,使得您很容易在应用程序内通过Internet或intranet访问文档和应用程序,或者创建Internet服务器应用程序。4.已完成的应用程序是使用Java虚拟机,您可以跨平台自由发布。2.2JSP版本简介JavaServerPage或简称为JSP是由Sun公司在Java语言上开发出来的一种动态网页制作技术,它提供了一种建立动态网页的简单方法,并为开发人员提供了一个Server端框架,基于这个框架,开发人员可以综合使用HTML,XML,JAVA语言以及其他脚本语言,灵活,快速地创建和维护动态网页,特别是目前的商业系统。作为JavaTM技术的一部分,JSP能够快速的开发出基于所有Web服务器和应用服务器环境,独立于平台的应用程序,而且具有非常强的可伸缩性。同时,JSP把用户界面从系统内容中分离开来,使得设计人员能够在不改变底层动态内容的前提下改变祖国网页布局。这样跨平台的特性己包含了目前大部份网站服务器配置环境,再加上它的语法写作方式可媲美ASP般的易学易懂,而且在网络安全技术方面甚至已超越ASP技术。所以,相信很快的时间内极有可能取代现有网页编译技术,而成为商业网站的新标准。在本节中我们将会讨论JSP技术的特性,让您更加了解这项新技术。2.3JSP语言的基本特点JSP程序语言具有许多优秀的特性,用其设计应用程序时有两个基本特点:可视化设计和事件驱动编程.JSP(JavaServerPages)是由Sun公司在java语言上开发出来的一种动态网页制作技术,JSP规范是Web服务器、应用服务器、交易系统、以及开发工具供应商间广泛合作的结果,使您可以将网页中的动态部分和静态的HTML相分离。⑴将内容的生成和显示进行分离使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。⑵强调可重用的组件绝大多数JSP页面信赖于可重用的、跨平台的组件(JavaBeans或者EnterpriseJavaBeansTM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,井使得这些组件为更多的使用者或者客户团体所使用[6]。⑶采用标识简化页面开发Web页面开发人员不会都是熟悉脚本语言的编程人员。JSP技术封装了许多功能,这些功能是在生成与JSP相关的XML标识的动态内容时所需要的。标准的JSP标识能够访问和实例化JavaBeans组件、设置或者检索组件属性、下载Applet,以及执行用其他方法更难于编码和耗时的功能。⑷健壮性与安全性由于JSP页面的内置脚本语言是基于Java编程语言的,且都被编译为JavaServlet,它就具有Java技术的所有好处,包括健壮的存储管理和安全性[7]。⑸良好的移植性作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。随着越来越多的供应商将JSP支持添加到他们的产品中,可以使用自己所选择的服务器和工具,而且更改工具或服务器并不影响当前的使用。⑹企业级的扩展性和性能当与Java2平台,企业版(J2EE)和EnterpriseJavaBeans技术整合时,JSP页面将提供企业级的扩展性和性能,这对于虚拟企业中部署基于Web的应用是必需的。2.3.1可视化设计同其他的一些可视化程序开发工具一样,JSP具有可视化设计的特点,微软的Word在刚刚进入市场时,同WPS竞争的一个重要的功能砝码就是"所见即所得"的字处理功能,JSP在设计应用程序界面时也可以说是"所见即所得".在设计时,头脑中所想象的应用程序界面,完全可以通过键盘鼠标以及徒手画出来,而不是编制大量的代码然后再编译生成,如果需要修改,也是利用键盘鼠标和手画,而底层的一些程序代码由JSP自动生成或修改。JSP为用户提供大量的界面元素(在JSP中称为控件对象),这些控件对象对于熟悉Windows应用程序的用户而言是一点也不陌生,如"窗体"、"菜单"、"命令按钮"、"工具按钮"、"检查框"等等,用户只需要利用鼠标、键盘把这些控件对象拖动到适当的位置,设置它们的大小、形状、属性等,就可以设计出所需的应用程序界面。2.3.2事件驱动编程Windows操作系统出现以来,图形化的用户界面和多任务多进程的应用程序要求程序设计不能是单一性的,在使用JSP设计应用程序时,必须首先确定应用程序如何同用户进行交互.例如发生鼠标单击、键盘输入等事件时,由用户编写控制这些事件的响应,这就是所谓的事件驱动编程。JSP是目前最为广泛的、易学易用的面向对象的开发工具。JSP提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性。故而,实现本系统JSP是一个相对较好的选择。2.4数据库的介绍SQL全称是“结构化查询语言(StructuredQueryLanguage)”,最早的是IBM的圣约瑟研究实验室为其关系数据库管理系统SYSTEMR开发的一种查询语言,它的前身是SQUARE语言。SQL语言结构简洁,功能强大,简单易学,所以自从IBM公司1981年推出以来,SQL语言,得到了广泛的应用。如今无论是像Oracle,Sybase,Informix,SQLserver这些大型的数据库管理系统,还是像VisualFoxporo,PowerBuilder这些微机上常用的数据库开发系统,都支持SQL语言作为查询语言。SQL是高级的非过程化编程语言,允许用户在高层数据结构上工作。他不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统可以使用相同的SQL语言作为数据输入与管理的接口。它以记录集合作为操纵对象,所有SQL语句接受集合作为输入,返回集合作为输出,这种集合特性允许一条SQL语句的输出作为另一条SQL语句的输入,所以SQL语言可以嵌套,这使他具有极大的灵活性和强大的功能,在多数情况下,在其他语言中需要一大段程序实现的一个单独事件只需要一个SQL语句就可以达到目的,这也意味着用SQL语言可以写出非常复杂的语句。SQL同时也是数据库文件格式的扩展名。SQL语言包含4个部分:
数据查询语言(SELECT语句)
数据操纵语言(INSERT,UPDATE,DELETE语句)
数据定义语言(如CREATE,DROP等语句)
数据控制语言(如COMMIT,ROLLBACK等语句)2.5关系型数据库的实现SQLServer2000就是关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。SQLServer2000的优点在于它能使用数据表示图或自定义窗体收集信息。数据表示图提供了一种类似于Excel的电子表格,可以使数据库一目了然。另外,SQLServer2000允许创建自定义报表用于打印或输出数据库中的信息。SQLServer2000也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。SQLServer2000是一种关系数据库工具,关系数据库是已开发的最通用的数据库之一。如上所述,SQLServer2000作为关系数据库开发具备了许多优点,可以在一个数据包中同时拥有桌面数据库的便利和关系数据库的强大功能。微软的JET数据库引擎提供了与数据库打交道的途径,我们是通过它以及JSP来访问数据库并对其进行各种操作。JSP、SQLServer2000以及其他微软的软件产品都是通过共用JET数据库引擎,从而给用户提供了丰富的数据类型。新建一个数据库创建任何一个数据库的第一步是仔细的规划数据库,设计必须是灵活的、有逻辑的。创建一个数据库结构的过程被认为是数据模型设计。1.标识需要的数据;2.收集被标识的字段到表中;3.标识主关键字字段;4.绘制一个简单的数据图表;5.规范数据;6.标识指定字段的信息;7.创建物理表。修改已建的数据库数据库的修改分为:添加、编辑和删除记录。这三种操作均可由JSP创建的程序来完成,下面的章节将详细描述实现的具体方法。实现数据库之间的联系数据库之间的关系指明两个库之间共享一个共同的关键字值。一个连接是指一种虚拟的表,这种表是在当用户要求从相互关联的各个不同的表中获取信息时建立的,关键字段用于在相互连接的不同表中查找匹配的记录。一个更高级的连接形式称为自连接。这种连接是指一个表被连接到它自己的一个字段,或在不同的记录中由重复数据的组合字段。数据库中有三种不同类型的关键字:主关键字、组合关键字和外关键字。在表中使用的关键字类型用于描述库表示什么以及在数据库中如何与其它的库建立关系。2.5.1JDBC数据访问接口JDBC(JavaDatabaseConnectivity)是用于执行SQL语句的JavaAPI[15]。它由一组用Java编程语言编写的类和接口组成,为Java应用程序与各种不同数据库之间对话提供了一种便捷的方法,使得开发人员能够用纯JavaAPI来编写具有平台无关性的数据库应用程序。JDBC的出现使Java程序对各种数据库的访问能力大大增强。通过使用JDBC,开发人员可以很方便地将SQL语句传送给几乎任何一种数据库。2.5.2 JDBC的体系结构目前,应用程序与数据库信息交换己经非常普遍。因此,一个程序设计语言对数据库开发能力的大小,决定着该语言的流行程度。在JDK1.1版本之前,Java语言提供的对数据库访问支持的能力是很弱的,编程人员不得不在Java程序中加入C语言的ODBC(OpenDatabaseConnectivity)函数调用,这使得Java程序的跨平台发布能力受到很大的限制。JDBC的出现使Java程序对各种数据库的访问能力大大增强。它为Java定义了一个“调用级”(cal-level)的SQL接口。这意味开发人员可以很方便地将SQL语句传送给几乎任何一种数据库[16]。JDBC的体系结构如图1所示:应用程序应用程序数据库应用程序数据库应用程序数据库JDBCAPIJDBCDriverManager数据库驱动图1JDBC体系结构从图中可以看出,JDBCAPI的作用就是屏蔽不同的数据库驱动程序之间的差别,使得程序设计人员有一个标准的、纯Java的数据库程序设计接口,为在Java中访问任意类型的数据库提供技术支持。驱动程序管理器(DriverManager)为应用程序装载数据库驱动程序。数据库驱动程序是与具体的数据库相关的,用于向数据库提交SQL请求。2.5.3 JDBC访问后台数据库的技术实现方法JDBC(JavaDatabaseConnectivity)是Java语言访问后台数据库的API。JDBC继承了Java语言的所有特点。并且,很多数据库系统自带JDBC驱动程序,Java程序就可通过这些程序与数据库相连。但是,JSP&Servlet并不直接使用JDBC技术访问数据库系统,而是把参数传递给事先编好的JavaBeanEJB组件,由它们对数据库进行操作。JDBC本身主要完成以下三件事件:与数据库建立连接;发送SQL语句;处理结果。JDBC的结构可分为两层:第一层是JDBCAPI,JDBCAPI是一系列的抽象接口,应用程序是首先通过它实现数据库的连接,执行SQL声明、获得返回结果;第二层JDBCDriverAPI主要负责与第三方驱动程序通讯,这些驱动程序才真正连接到数据库。2.6旅游系统软件开发方法目前比较成熟的管理信息系统开发方法有:生命周期法、原型法、面向对象法等。生命周期法:把一个信息系统从其提出、分析、设计和使用,直到停止使用的整个生存期视为一个生命周期。整个生命周期划分为五个主要工作阶段:可行性分析阶段、系统分析阶段、系统设计阶段、系统实施阶段和系统运行、维护与评价阶段。通常采用结构化系统分析和系统设计方法,自上而下分析、设计、强调开发过程的整体性和全局性;开发过程在时间上基本按阶段进行,任务明确;结合用户需求进行开发;开发周期长,维护不方便。适用于开发需求较明确固定的信息系统。原型法:是系统开发者在初步了解用户需求的基础上,开发出能实现系统最基本功能的一个原型,再根据用户对原型使用与评价的意见,提出修改方案,修改完善原型,如此反复多次,直到得到用户满意的最终系统为止。开发过程以用户为中心,开发周期短。适用于开发需求不够明确或不断变化的软件。面向对象法:以类,类的继承,聚集等概念描述客观事物以及联系。为管理信息系统的开发提供了全新的思路,面向对象方法以对象为中心。其特征主要有模块性,继承性和类比性,动态连接性。其中原刑法是近几年发展起来的一种开发方法,该方法从一个初始信息要求的集合出发,在发展中逐步完善信息系统,本系统采用的是原型法。使用原型法开发大体有以下几个步骤:1.确定系统需求。其中包括系统的应用范围、系统开发的经费估算等。2.设计初始原型。包括确定需求和开发工作模型,例如屏幕格式、功能菜单、报表格式以及对关键数据和功能的说明等。3.对初始原型进行需求迭代,不断进行修正或改进,直至得到一个用户满意的原型,从而终止原型迭代过程。4.如果需要,可写出系统必要成分的严格、详细的说明(如将需求转化为报表)。5.原型效果考察。考察用户新加入的需求信息和组成成分的严格说明信息,看其对原型效果的影响,是否影响到原型的有效性,如果导致原型失败,应加以修正和改进。原型法的生命周期提供了一种完整的、灵活的、近于动态的需求定义技术。它综合了所有提出的必要需求,建立原型就近似于预先需求的规格说明。对应于原型的工作模型可以进行必要的剪裁和组织,以便更接近目标系统。它可以综合用户、领导和原型开发人员的各方需求。3.项目定义3.1系统分析计算机系统工程是指与构造基于计算机系统有关的过程、方法和技术。它是一种问题求解活动。计算机系统工程师从用户定义的目标和约束条件出发,给出系统功能、性能、接口、设计约束条件和信息结构的描述,并将它们分配到各系统要素予以实现。在开始构造一个基于计算机的新系统时,系统工程师必须做大量的调查、研究和论证工作,真挚建造系统或系统某一部分的原型,以便尽早确定系统的功能和性能。然后,系统工程师将系统功能和性能分配到系统各要素之中,如软件、硬件、人,等等。多数场合,一个功能可用多种方法实现。系统工程师必须善于根据系统设计目标和约束条件设计并选择最佳方案,为系统各要素指派功能和性能。方案的选和指派必须按照一定的原则进行。例如,在成本、时间、软硬件支撑环境、人员的技术水平和经验、方案的复杂性、系统的安全性和可靠性、系统的可重用性、使用的方便性和人员培训的难易程度等方面进行取舍和折中。3.2问题定义问题定义是整个软件开发的第一步,在这个阶段主要问题是:“要解决的项目问题是什么?”只有弄懂了要解决问题,才能够合理的分析和解决问题,并为以后的总体设计和详细设计打下坚实的基础。根据软件工程,前期的问题定义占软件开发很大部分,是很重要的环节。软件项目定义阶段的任务有四项。1、制定软件项目规划。包括:描述软件的工作范围、进行风险分析、提出开发软件所需资源清单、估算软件项目的成本和进度,并易成本和进度估算为基础对软件项目进行可行性论证。最后,生成经过项目管理组织评审的软件项目规划。2、软件需求分析和定义。确定软件的功能和性能,详细定义软件系统要素。定义软件需求有两种方法。一种是采用形式化的信息分析方法。建立信息流和信息结构模型,然后将这些模型扩展为软件规格说明。另一种是为软件开发原型,软件工程师和用户一起对原型进行评审和修改,从二获得用户满意的需求定义信息。3、确定软件性能和资源约束,这对软件设计特性会产生直接的影响。4、为软件要素定义验收标准,它也是制定软件测试计划的基础。3.2.1设计目的和任务面向现实需求实现通用旅游网站建设设计出的旅游网站可以满足绝大多数旅游者的需求,而不仅仅局限于某一个旅游者的使用。学习和掌握JSP开发工具,深刻体会面向对象编程的方法和思想能熟练使用JSP,并成功编出毕业设计项目。依靠其可视化的面向对象编程以及大量的控件来设计旅游网站建设的界面和实现各种功能。掌握软件开发环境和操作系统本软件的开发是在任何的环境下进行的。能够熟练操作和使用WINDOWS操作系统和JSP编程工具,以及简单处理在使用中遇到的问题。熟悉软件开发的流程按照软件工程的思想和方法,进行旅游网站建设的需求分析、系统设计、详细设计、编码、测试和维护等等。同时参考和学习软件工程新途径:面向对象方法学引论、分析、设计、实现等。以便学习跟上和了解计算机编程的心思想和新潮流。用户界面友好、清晰、易学易用,易于维护。3.2.2设计要求1、合理设定用户,控制用户使用权限。2、管理人员可以随时根据实际情况修改数据库中的数据资料,使信息的更新及时、准确;4、提供的特价路线信息让游客可以一目了然;5、查找功能方便管理人员了解各条路线的游客统计,便于统一管理;本设计是一个旅游网站建设,要求简单的信息添加、删除、修改等,及时进行数据的查询和管理。该软件以Windows环境,JSP工具和MicrosoftSQLSEVER数据库设计。3.3可行性分析开发任何一个基于计算机的系统,都会受到时间和资源上的限制。因此,在接受项目之前必须根据客户可能提供的时间和资源条件进行可行性研究。它可以避免人力、物力和才力上的浪费。可行性研究与风险分析在许多方面是互相关联的。项目风险越大,开发高质量软件的可行性就越小。可行性研究包括经济可行性、技术可行性、法律可行性和开发方案的选择性。以下从四个方面对旅游网站建设进行可行性分析:技术可行性、经济可行性、操作可行性和法律可行性。技术可行性为了确定现有技术能否实现目标系统。JSP自带的工具、MicrosoftSQLSEVER拥有的表操作(建立、修改、删除等)协调操作完全可以实现本系统要求达到的各种功能。旅游网站建设把导游和游客的信息贮存在数据库里,然后经过数据的抽取和分类,显示在需要的窗口内。基本信息录入
数据库景点信息表线路信息表新闻信息表
基本信息录入
数据库景点信息表线路信息表新闻信息表
经济可行性为了确定待开发的系统的经济效益能否超过开发成本。旅游网站建设是一个不会直接产生经济效益的投资,但是能够节省人员资源的消耗和浪费,从而节约成本,提高效率。从成本效益角度来观察,这个系统的开发成本不是很高,在使用后,能够起到的作用也是十分可观的。操作可行性旅游网站建设是基于JSP平台开发的,JSP系列是被广泛应用于数据库开发和操作的一套成熟的软件平台,而且它对于一个小型的数据库处理具有不可比拟的优点和简单方便。所以丛操作可行性方面是可行的。开发出来的界面也是十分容易使用,具有简单,容易上手的特点。法律可行性本系统完全是本人在指导老师的指导下独立完成的,故不存在侵权行为或者由于本系统带来的法律纠纷等问题,所以在法律上是可行的。所以从上面四点出发,可以确定系统分析是可行的。3.4需求分析需求分析是介于系统分析和软件设计阶段之间的重要桥梁。一方面,需求分析以系统规格说明和项目规划作为分析活动的基本出发点,并从软件角度对他们进行检查和调整。另一方面,需求规格说明又是软件设计、实现、测试,直至维护的主要基础。需求分析是在可行性研究的基础上进行的,可行性研究实质上是一次完整的分析和设计过程,只不过是在抽象的层次上进行的大大压缩和简化的分析和设计过程。需求分析的结果是软件开发的基础,必须仔细验证它的正确性,开发人员必须和用户取得完全一致的意见,需求分析的文档应该被用户所确认。为了更准确、更具体地确定用户的需求,往往需要构造出目标系统的原型,供用户试用以取得实践。良好的分析活动有助于避免或尽早剔除早期错误,从而提高软件生产率,降低开发成本,改进软件质量。
需求分析的基本任务是确定目标系统必须具备那些功能,准确完整的体现用户的要求。旅游网站建设的需求分析:1、采用JSP开发工具;2、合理设定用户,控制用户使用权限。让系统可以分辨出非用户和用户,普通用户和超级用户(即管理员)。3、管理人员可以随时根据实际情况修改数据库中的数据资料,使信息的更新及时、准确;4、旅游的信息可以由管理人员添加和删除,普通用户只可以查看。5、景点信息里某些新线路的开发,或旧线路的修改和删除由管理人员按实际要求处理。6、用户的个人资料可以方便地增加、删除和修改。7、提供的特价路线信息让用户可以一目了然,清楚了解最新讯息。4.系统开发4.1系统设计总体设计的基本目的就是回答“概括地说,系统应该如何实现?”这个问题,因此,总体设计又称为概要设计或初步设计。本设计阶段的基本目的是用比较抽象概括的方式确定系统如何完成预定的任务,也就是说,总体设计阶段主要由两个小阶段组成。首先需要进行系统设计,从数据流图出发设想完成系统功能的若干种合理的物理方案,分析员应该仔细分析比较这些方案,并且和用户共同选定一个最佳方案。然后进行软件结构设计,确定软件由那些模块组成以及这些模块之间的动态调用关系。层次图和结构图是描绘软件结构的常用工具。在进行软件结构设计时,应该遵循的最主要的原理是模块独立原理,也就是说,软件应该由一组完成相对独立的子功能的模块组成,这些模块彼此之间的接口关系应该尽量简单。在进行软件结构设计时一种有效的方法是,由抽象到具体地分析和构造出软件的层次结构。自顶而下逐步求精是进行软件结构设计的常用途径;但是,如果已经有了详细的数据流图,也可以使用面向数据流的设计方法,用形式化的方法由数据流图影射出软件结构。数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建设中的核心技术,具体说,数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。通过这个阶段的工作将划分出组成系统的物理元素—程序,文件,数据库,人工过程和文档等。耦合:是对一个软件结构内不同模块之间互连程度的度量。内聚:标志一个模块内各个元素彼此结合的紧密程度,它是信息隐蔽和局部化概念的自然扩展。4.2本系统的总体设计1、旅游网站建设的开发首先需要设计数据库。根据需求分析得到的结果,用MicrosoftSQLSEVER表设计器设计好结构表后添加到数据库中。为了使用方便,共创建了4个数据表。2、为了完成用户的需求,共设计7个窗口(登录窗口、主窗口、导游信息窗口、特价路线信息窗口、景点信息窗口、用户权限窗口和游客信息查询窗口)。输入用户和密码1)登录系统输入用户和密码错验证进入主界面
错验证进入主界面
登录界面登录界面主界面旅游咨询旅游线路热点线路线路查询用户权限
4.3详细设计具体分析是软件生命周期的一个重要阶段,它最根本的任务是确定为了满足用户的需要系统必须做什么。具体地说,应该确定系统必须具有的功能和性能,系统要求的运行环境,并且预测系统发展的前景;必须仔细分析系统中的数据,既要分析系统中的数据流又要分析长期使用的数据存储。通过仔细分析应该得出用数据流图、ER图、数据字典和简洁的算法描述所定义的详细的系统逻辑模型。图形工具比文字叙述能更好地表达重要的细节,数据流图能够极好地概括描述一个系统的信息。ER图能直观、准确地描绘系统的数据需求。数据字典也是重要的,数据是把一个系统的各个组成元素连接在一起的“黏合剂”,为了成功地把所有系统元素连接起来,这些元素必须共享公共的数据定义,数据字典正是这些数据定义的集合算法同样是重要的,分析的目的是确定系统必须做什么,广义地说,任何一个计算机系统的基本功能都是把输入数据转变成输出信息,算法定义了转变的规则。因此,没有对算法的了解就不能确切知道系统必须做什么。此外,在需求分析阶段还应该根据对目标系统的更深入更具体的认识,修正开发目标系统的计划。详细设计阶段的根本目标是确定应该怎么具体地实现所要求的系统,也就是说,经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。为了满足旅游网站建设的使用要求,本系统用SQLSEVER创建有4张表,分别是密码表、导游表、游客表以及旅游路线表。密码表的作用是验证登录时的用户名和密码,并判断用户的使用权限来启动或关闭某些按钮的操作;导游表的作用是存放导游的基本资料,便于及时查看;游客表的作用也是存放资料信息,随时可以添加记录,方便旅游网站的记录管理;旅游路线表中存放线路的具体信息,管理员可以根据具体的情况选择线路添加、修改和删除,游客可以通过自己的选择,迅速查处相关旅游胜地的路线资料。建立一个数据表,及时更新每星期推出的特价路线信息。用户应用顺序为:登录窗口——>主窗口——>——>旅游咨询窗口——>信息窗口——>线路搜索窗口——>旅游信息查询窗口——>热点线路窗口
——>用户权限窗口
功能模块图:旅游信息系统旅游信息系统登录/注册模块查询模块系统管理模块权限管理模块登录模块注册模块简单查询模块复合查询模块综合查询模块增加旅游信息模块修改旅游信息模块增加系统维护员模块删除系统用户模块4.4、E-R模型简介数据库设计中常用E-R图来描绘数据库的结构。E-R模型中包含“实体”、“联系”和“属性”等三个基本成分,下面介绍这三个基本成分:1、实体实体是客观世界中存在的且可相互区分的事物。实体可以是人也可以是物;可以是具体事物也可以是抽象概念。例如,员工、原料、商品、定单等都是实体。在E-R图中用矩形代表实体。2、联系客观世界中的事物彼此间往往是有联系的。例如,客户与企业间有“卖”这种联系;企业与供应商之间存在“买”这种联系。联系可分为三类:(1)一对一联系(1:1)例如,一个公司只有一个总经理,而每个总经理只在一个公司任职,则公司与总经理之间的联系是一对一的。(2)一对多联系(1:N)例如,公司与员工之间存在一对多的联系“雇佣”,即每个公司雇佣了多名员工。(3)多对多联系(M:N)例如,客户与公司之间存在的联系(“买”)是多对多的,即每个客户可以向多家公司购买商品,而每个公司也可以向多家客户出售产品。在E-R图中,用连接相关实体的菱形框来表示联系。3、属性属性是实体或联系所具有的性质。通常一个实体由若干个属性来刻画。例如,“公司”实体有名称、类别、地址、电话等属性;“员工”实体有姓名、性别、职位、家庭住址等属性。“定单”实体有定单号、定货日期、截止日期、商品、数量、定金等属性。在E-R图中用椭圆形来表示实体(或联系)的属性,并用无向边把实体(或联系)与其属性连接起来。人们通常就是用实体、联系和属性三个概念来理解现实问题的,因此,E-R模型比较接近人的习惯思维方式。此外,E-R模型使用简单的图形符号来表达系统分析员对问题的理解,不熟悉计算机技术的用户也能理解它,因此,E-R模型可以作为用户与分析员之间有效的交流工具。4.5、本系统的E-R图及数据库表的结构总体E-R图用户名用户名密码性别年龄用户预定线路属于热点普通景点时间价格联系人用户信息用户名线路日期价格预定详细1、各实体的属性图用户=用户名+密码+权限游客=身份证号码+姓名+年龄+性别+联系电话+旅游日期+参加的团队+备注路线=路线+旅游信息+发团日期+价格+属性+终点+中点站
用户实体及属性用户用户名密码权限
用户用户名密码权限
路线实体及属性路线旅游信息
路线旅游信息
发团日期价格路线
发团日期价格路线
属性属性
2、表结构数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建设中的核心技术,具体说,数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。根据系统的需要和实际操作的要求,本系统用MicrosoftSQLSEVER共建有2张表,详细如下:
●用户信息表:主键:身份证号码字段名称数据类型字段大小必填字段允许为空姓名文本30是否性别文本8否是年龄数字长整型否是联系电话文本50是否备注文本50否是
线路信息表:路线字段名称数据类型字段大小必填字段允许为空旅游信息文本20是否路线文本50是否价格数字长整型否是
4.6模块功能实现系统登录窗口当管理员输入完用户名和密码后,系统就开始判断用户名是否存在。用户名不存在时,提示出错信息,不能使用本系统;用户名存在而密码不匹配时,提示出错信息;只有当用户名和密码都正确且匹配时,进入主界面,使用旅游网站建设。管理员享有一切权力。后台登陆:用户登陆:主界面主界面提供了很多的按钮,只要你点击想要查看的窗口,就可以随意进入,其中的更改用户可以让你回到登录界面重新登录,重新判断用户的权限。此窗口中的信息添加,修改和删除都是只能由管理人员使用,一般用户只能查看翻阅基本资料。用户可以看到最新的信息,了解旅游地区的信息。旅游线路信息窗口此窗口是本系统最核心的设计,它提供给用户路线的选择和详细资料。你可以通过属性来选择。如果用户想更快地查到自己向往的旅游地点,也可以直接输入城市的名称,即可完成路线查找。若没有用户希望的旅游路线,旅游网站可以根据用户的要求,并结合导游、景点情况以及开发的前景预测适当新增或修改路线,尽量完成用户的愿望。当然,如果有的路线开发不合理,经过一段时间的试运营后可以删除。留言窗口用户通过了解景点信息窗口中的路线,作出自己的选择,就可以把个人基本信息告诉旅游网站以便统一管理和相互的联系。旅游网站就可以及时与用户取得联系,商量响应处理地方法。4.7程序流程图4.7.1程序设计管理信息系统处理方式的合理选择,就是一个处理过程的设计问题。选择处理方式实际上就是根据系统的任务、目标和环境条件,合理地选择信息活动的形态及具体方法。程序流程图又称为方框图。表示方法简明直观,是用来描述程序执行的逻辑过程的。它把程序的基本步骤归纳为:处理、判断、输入/输出、开始和结束等几个基本功能,并用不同的记号加以表示,从而描述程序的执行过程。在绘制程序框图时,使用的符号说明如下。图流程图符号系统主程序流程图如下图所示。启动程序启动程序输入用户名和密码合法性检查连接数据库读取权限用户管理员进入主界面结束NNY主程序流程图子系统流程图如下图所示。返回主界面返回主界面功能选择输入/输出操作信息进入是否继续YN旅游系统前后台各功能模块的选择操作子系统流程图4.7.2编程的过程及特色本系统在主框架的模块上采用自顶向下的方式,把系统的功能按照模块化和逐步细分的方法分解到最小的控制。在界面的设计上采用面向对象的方式,先设计底层模块,把有共性的界面设计,功能放在底层模块统一处理。这样既保证了界面的统一性,减少了编程的工作量,同时也方便了修改。许多修改只要在底层模块统一完成,不必一一修改。5.软件编码与测试所谓编码就是把软件设计的结果翻译成计算机可以“理解”的形式—用某种程序设计语言书写的程序。编码的目的是实现人和计算机的通信,指挥计算机按人的意志正确工作。系统测试是系统质量保证的主要活动之一,在系统开发的过程中,在各个阶段都有可能存在错误和缺陷。通过测试是可以发现系统设计中存在的种种问题,并可以及时改正,避免在系统投入使用时才出现不必要的错误,从而导致不必要的损失。测试是质量保证一个砝码,它提供对系统规格说明、设计和编码的最终评审,是发现系统缺陷和错误的有力手段。5.1程序编码本系统较有特色的部分就是景点信息窗口和用户权限窗口,其中根据字段的长度来改变网页中单个表格的长度能使界面更和谐。5.2安装说明硬件:PC机CPUPⅢ以上,内存128M以上,显卡64M,硬盘20G以上等等。系统运行的软件环境操作系统:Window98/2000数据库:SQLSEVER2000运行环境:TOMCAT5.0JDK1.5.0
5.3软件测试无论怎样强调软件的测试的重要性和
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中考九年级语文上册15非文学作品阅读
- 2025年电商平台售后服务质量提升对售后服务评价体系的影响报告
- 2023年度冶金工业技能鉴定模拟试题及参考答案详解一套
- 住宅楼基础及地下室施工方案筏板基础剪力墙
- 市场调研公司合伙协议书模板
- 岩石爆破破坏机理课件
- 屋顶上的猫咪课件
- 小麦的秘密课件教学
- 小鸭子与小公鸡的课件
- 小鸭嘟嘟和向日葵课件
- 政治校本课程
- 抽油机井示功图分析判断1
- GB/T 39141.3-2022无机和蓝宝石手表玻璃第3部分:定性标准和试验方法
- 特劳特《定位》PPT通用课件
- GB/T 1732-1993漆膜耐冲击测定法
- 二十四节气演讲稿
- GA/T 2000.7-2014公安信息代码第7部分:实有人口管理类别代码
- 2023年安徽国贸集团控股有限公司招聘笔试模拟试题及答案解析
- 初中作文指导-景物描写(课件)
- 植物灰分的测定
- 实验室资质认证评审准则最新版本课件
评论
0/150
提交评论