综上所述,JavaScript是一种新的脚本语言,它可以被嵌入到标准的Html文件之中并解释执行。JavaScript语言可以做到动态响应用户的输入(如:form的输入),而不用任何的网路在浏览器和服务器之间来回传输资料,所以当一位用户输入数据时,它不用经过传给服务器端(Server)来处理,再传回浏览器的过程,而直接可以被客户端(Client)的应用程序所处理。 2.2.4 ASP.NET简介 Asp(Active Sever Pages 动态网页)是微软公司推出的一种用以取代CGI(Common Gateway Interface)技术。 ASP.NET是基于ASP技术,在IIS 2.0上首次推出,与ADO 1.0 同时推出,并借助IIS 3.0之势 ,从而一跃成为服务器端WEB应用程序开发热门工具之一,微软还专门为它设计了配套的Visual InterDev开发工具,在1994年到2000年期间,微软已经把ASP技术当成在全世界范围内大力推广Windows NT 4.0平台的关键技术之一,数不胜数的ASP网站在这个时候也如雨后春笋般的出现在互联网上。但是ASP也有它缺点,意大利面型的程序开发方法,增大了所开发出来的WEB应用程序维护的难度,尤其对于大型的ASP应用程序来说,更是如此。 直译式的VBScript或JavaScript语言,让某些效能不能充分展示出来。 在延展性方面又因为其基础架构的扩充性不足而有所影响,虽然可以选用很多的COM组件,但针对于一些特殊功能(如文件上传)的设计实现时,没有提供内置的组件,还要寻求第三方软件商开发的元件来支持,显得比较麻烦。 1997年时,微软开始针对于ASP的缺点(尤其是意大利面型的程序开发方法)开始着手一个新项目来开发,当时ASP.NET的主要领导人Scott Guthrie,他是刚从杜克大学毕业的毕业生,他和IIS团队的Mark Anders经理一起合作两个月,开发出了下一代ASP技术的原型,这个原型在1997年的圣诞节被开发出来,并把它命名为XSP,这个原型产品是采用Java语言设计开发的。并且很快就把它被纳入当时还在开发中的CLR平台里,Scott Guthrie事后也认为将这个技术移植到当时的CLR平台,冒了很大的风险,但当时的XSP团队是以CLR平台开发应用的第一个团队。 为了将XSP技术移植到CLR平台中,XSP团队用C#语言对XSP的内核程序进行了改写,并且改名为ASP+,作为ASP的下一代技术,并且也给ASP开发人员提供一个简单的移转方法。ASP+首次的Beta版本以及应用是在PDC 2000中亮相,由Bill Gates主讲Keynote(即关键技术的概览),由富士通公司展示使用COBOL语言撰写ASP+应用程序,并且宣布它可以使用Visual Basic.NET、C#、Perl与Python等语言来设计开发。 在2000年,微软正式启动.NET策略,ASP+在那时也改名为ASP.NET,经过四年的开发,ASP.NET第一个版本和.NET Framework 1.0也在2002年1月5日亮相。目前在VS2010平台内包含了最新版本的 ASP.NET 4.0 和 .NET Framework 4.0 。 ASP.NET的页框架和Web窗体页。ASP.NET 页框架实际只是一种编程框架,它能在 Web 服务器上运行,并能动态地生成和管理 Web 窗体页。在 Visual Studio 中,Web 窗体为开发人员提供了窗体设计器、编辑器、控件的工具箱和调试功能,ASP.NET开发人员可能充分利用这些功能,能快速地开发出基于WEB服务器端运行的可视化的用户界面;Web 窗体页能任何浏览器或客户端设备上运行。不过,开发人员也可以将 Web 窗体页设计成指定的特定浏览器,并利用特定浏览器或客户端设备的功能。ASP.NET 支持基于 Web 的设备(如移动电话、手持型计算机和个人数字助理 (PDA))的移动控件;ASP.NET 页框架创建了传统客户端/服务器(C/S 结构) Web 交互的抽象模型,从而使你能够采用支持快速应用程序开发 (RAD) 和面向对象编程 (OOP) 的传统方法和工具来进行WEB应用程序开发实现;在 Web 窗体页设计中,还可以使用控件的属性、方法和事件驱动来处理 HTML 元素。ASP.NET 页框架为在服务器端运行的代码中的客户端事件的响应提供统一的模型,从而使您不必考虑怎么来实现WEB组件的响应机制,只需要在响应事件的代码中编写需要处理的代码就行了。而且ASP.NET 页框架和 Web 窗体页还支持服务器控件,这些控件可以将常见的 UI 功能封装在易于使用并且可再次使用的控件中。 ASP.NET的调试支持。ASP.NET 采用运行库调试基础结构的方式来提供在本地或从 Web 服务器远程使用的跨语言和跨计算机调试支持。此外,ASP.NET 页框架提供可以将检测消息插入窗体的跟踪模式。 ASP.NET是建立在通用语言运行时刻库(CLR)上的应用程序框架。用它可以在服务器端构建功能强大的web应用程序。ASP.NET提供了几个超越以前web开发模式的优点: 1,增强的性能。ASP是在服务器端解释执行的,而Asp.net却是运行在服务器端的编译后的CLR代码,运行速度得到了提高。Asp.net采用了提前绑定、即时编译、本地优化和缓存服务等方式来提高性能。正因为如此,它的性能远远大于以往用ASP写的每一行代码。 2,拥有世界级水平的开发工具支持。在Visual Studio .net的集成开发环境(IDE)中,Asp.net框架由包含有众多控件的工具箱和设计器组成。可视化(WYSIWYG)编辑方式、可自由拖放服务器控件、自动部署,这些仅仅是这一强大工具中的一小部分功能。 3.强大而富有弹性。由于asp.net是基于CLR平台的,因此整个.net平台非常功能强大并且富有弹性。.net框架提供的类库、消息机制以及数据访问解决方案,都可以无缝集成到web应用程序开发设计中。并且Asp.net语言中立的,因此你可以选择你最熟悉的语言来进行编程实现,或者也通过几种语言的结合来共同完成一个应用。而且,CLR的互用性可以保证你升级到Asp.net的时候,现存的基于COM的开发组件依然保留。 4.简单。Asp.net实现了常用的工作的简单化,比如从简单的表单提交、用户输入数据的客户端验证,到部署和站点配置。例如,asp.net允许你在代码中建立与用户界面接口,实现用户页面和逻辑代码的分离,同时由页面驱动模式变成了事件驱动模式。此外,CLR也简化了部署,用来自动管理代码,如自动参照和垃圾回收。 5.易于管理。Asp.net内部采用了一个基于文本的、分层次的配置系统,从而使得服务器端环境和web应用程序的设置得到了大大的简化。因为配置信息是采用纯文本格式来保存的,所以新的设置不需要本地管理工具的支持。在部署 asp.net应用程序时同样也应用了这种"零本地支持"的理念。Asp.net应用程序部署到服务器,从而减少了复制必要的文件到服务器的工作。 6.可伸缩性和有效利用性。Asp.net采用可伸缩式的模式,能为集群和多处理器环境设计提高性能。并且asp.net运行时是不间断地密切监视和管理进程,如果应用程序运行出错了,如漏洞和死锁,新的进程将会立即在当前位置建立,从而帮助你的应用程序得到恢复,继续处理事件请求,提高了系统的稳定性。ASP.NET 还提供了内部状态管理机制,它使您能够保存和管理应用程序特定、会话特定和开发人员定义的信息。此信息独立于页面上的任何控件,它可以在页面间实现共享,如客户信息或购物车的内容。ASP.NET 提供了分布式状态功能,使得开发人员可以在一台计算机或几台计算机上同时创建同一应用程序的多个实例。 7.可订制和扩展性。Asp.net采用了一种良好的扩充结构,允许开发者在适当的位置处"插入"他们的代码。开发者可以使用自己的编写的组件,也可以扩展或者替换asp.net内置的任何组件,从而使得执行自定义验证或状态服务变得前所未有的容易。 8.安全性。内置的windows验证和每一个应用程序都采用的独立配置保证了开发出来的WEB应用程序的安全性。ASP.NET 应用程序在运行时,会以有限的权限在ASP.NET 的 Web 服务器上的特殊本地用户的上下文中执行,这样就限制了它对 Windows 资源和进程的访问,进而就增强了 Web 应用程序代码的安全性。ASP.NET 还为 Web 应用程序提供了各种身份的授权和身份验证方案,您可以随时根据你所开发的应用程序的需求来进行移除、添加或替换这些方案。 9.简单的部署。Visual Studio 为向本地或远程服务器部署应用程序提供了一种简化的机制。只需将文件复制到指定的应用程序目录或者使用更为专门化的可配置部署项目,即可安装这些文件。 2.2.5 Microsoft SQL Server简介 SQL是英文Structured Query Language的缩写,是结构化查询语言。SQL语言的主要功能就是同各种数据库建立联系,进而对数据库中数据进行相应的操作。按照ANSI(美国国家标准协会)的规定,所SQL定义为关系型数据库管理系统的标准语言。使用SQL语句可以对数据库中的数据进行各种各样的操作,如更新数据库中的数据、查询数据库中的数据、删除数据库中的数据等。目前,绝大多数关系型数据库管理系统都采用了SQL语言标准,如Oracle, Sybase, Microsoft SQL Server, Access等。尽管很多数据库都对SQL语言进行了再开发和扩展,但是包括Select, Insert, Update, Delete, Create,Drop在内的标准的SQL命令仍然能完成几乎所有数据库操作。 SQL Server 是一个关系数据库管理系统。它最初是由Microsoft、 Sybase 和Ashton-Tate三家公司共同开发,并在1988 年推出了第一个OS/2 版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分开了,Microsoft 将SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本。Sybase 则较专注于SQL Server在UNIX 操作系统上的应用。
SQL Server 2000简介 SQL Server 2000 是Microsoft 公司推出的SQL Server 数据库管理系统,该版本不仅继承了SQL Server 7.0 版本中的所有优点,而且同时也增加了许多更先进的功能。具有使用方便、可伸缩性好、与相关软件集成程度高等优点,可以在从运行Microsoft Windows 98 的电脑到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台上使用。 Microsoft SQL Server 2005简介 Microsoft SQL Server 2005 是一个全面的数据库平台,使用集成的商业智能 (BI) 工具为企业用户提供了企业级的数据管理。Microsoft SQL Server 2005 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。 Microsoft SQL Server 2005 数据引擎是本企业数据管理解决方案的核心。此外 Microsoft SQL Server 2005 结合了分析、报表、集成和通知功能。这使您的企业可以构建和部署经济有效的 BI 解决方案,帮助您的团队通过记分卡、Dashboard、Web services 和移动设备将数据应用推向业务的各个领域。 Microsoft SQL Server 2005与 Microsoft Visual Studio、Microsoft Office System 以及新的开发工具包(包括 Business Intelligence Development Studio)的无缝链接式紧密集成,从而使得它的应用范围得到了大大的扩展。无论你是开发人员、信息工作者、数据库管理员、还是决策者,Microsoft SQL Server 2005 都将为你提供创新的解决方案,帮助您从数据中获得更多的有用信息。 Microsoft SQL Service 2008简介 Microsoft SQL Service 2008下Microsoft SQL Server 2005的下一个版本,不仅保留了Microsoft SQL Server 2005的所有优点,而且Microsoft SQL Server 2008还做了以下方面的增强来扩展它的安全性: (1)简单的数据加密 Microsoft SQL Server 2008不需要改动应用程序就可以对整个数据库、数据文件和日志文件进行加密。进行加密能满足公司遵守规范和及其关注数据隐私的要求。简单的数据加密的好处包括可以使用任何范围或模糊查询搜索加密的数据、加强数据安全性以防止未授权的用户访问,这些操作可以在不改变已有的应用程序的前提下进行。 (2)外键管理模式 Microsoft SQL Server 2008为加密和密钥管理提供了一个全面且系统化的解决方案。为满足不断发展的对数据中心的信息的更安全的需求,公司投资给供应商来管理公司内的安全密钥。 Microsoft SQL Server 2008通过支持第三方密钥管理和硬件安全模块(HSM)产品为这个需求提供了很好的支持。 (3) 增强了审查 Microsoft SQL Server 2008使你可以审查你对数据的操作,从而提高了数据中心信息的遵从性和安全性。审查功能不仅仅包括对数据修改的所有信息,还包括关于什么时候对数据进行读取的信息。Microsoft SQL Server 2008具有向服务器中加强的审查的配置和管理配置的功能,从而使得公司对各种规范需求得到了满足。Microsoft SQL Server 2008还可以定义每一个数据库的审查规范,所以审查配置可以为每一个数据库作单独的配置。为指定对象作审查配置,从而使审查的执行性能更好,配置的灵活性也大大提高了。 2.2.6 开发语言C#简介 C#是微软公司在2000年6月发布的一种新的编程语言,并定于在微软职业开发者论坛(PDC)上登台亮相.C#是微软公司研究员Anders Hejlsberg的最新成果.C#看起来与Java很相似;它包括了诸如单一继承,界面 ,与Java几乎同样的语法,和编译成中间代码再运行的过程.但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,。C#是微软 (Microsoft)为.NET Framework量身订做的程序语言,C#拥有C/C++的强大功能以及Visual Basic简易使用的特性,是第一个组件导向(Component-oriented)的程序语言,和C++与Java一样亦为对象导向(object-oriented)程序语言。 2.2.7 开发模式的简介 B/S结构简介 B/S结构即Browser/Server(浏览器/服务器)结构,是随着Internet 技术的兴起,对C/S结构的一种改进和变化。在这种结构下,客户机上只需要装有一个浏览器(Browser),用户就可以通过WWW浏览器来访问服务器上的内容,只有少部分用户提交的事务在前端处理,但是主要的事务还是在服务器端处理的,形成所谓的三层架构(3-Tier)B/S结构,主要是借助了不断成熟的WWW浏览器技术和能在浏览器端解释执行的的多种Script脚本语言(如VBScript、JavaScript等)和Activex技术,在通用浏览器端就实现了原来需要复杂专用软件才能实现的强大功能,大大节约了开发成本,是一种全新的软件系统构造技术。 B/S最大的优点就是不用安装任何专门的软件就可以随时随地的进行操作。只要有一台能上网的电脑就可以了,并且客户端实现的是零维护。系统的扩展非常容易,只要能连上网络,再由系统管理员分配一个用户名和密码,就可以使用。甚至可以采用在线申请的方式,通过公司内部的安全认证(如CA证书)后,不需要系统管理员参与,系统可以自动为用户分配一个账号进入系统;采用Internet/Intranet技术,适用于广域网环境;支持更多的客户。可根据访问量动态配置WEB应用服务器,以保证系统性能;客户端只需标准的浏览器;采用面向对象技术;代码可重用性好;系统扩展维护简单。 3.航空售票系统的需求分析 3.1航空售票系统的需求分析 随着互联网的快速发展,人们越来越习惯于通过网络来实现所需的服务,网络已经深深影响了人们的生活方式,而且传统的人工售票已经不能满足航空客运的发展要求,更不方便乘客的机票信息查询及购买。而且近年来航空客运量持续快速增长,客运量需求的增长为航空业的快速发展带来了机遇,为了充分满足旅客对出行时间和服务质量的需求,以及抢占运输市场份额,不断扩大客运市场航空占有份额,航空公司就必须建立自己的售票系统,让客户能够通过网络更充分地了解我的服务。 本系统主要分为两部分:管理员部分和会员部分。为了方便乘客查询自己所需要的机票信息,因此,要求管理员对机票信息要进行合理的管理,并提供了方便、快捷、灵活的查询条件,为乘客的出行带来了极大的方便。系统要实现机票预定管理的自动化,就要完成对航线信息、航班信息、机票信息、订单信息的管理及维护,对用户机票的预定及订单的支付情况进行管理,最后网站还要给客服提供客服服务,以便让更多的乘客了解航空公司的服务及反馈意见,以便提高航空公司的服务质量。所需的功能如下: 1.能够实现用户的网上注册功能,用户在网上预定机票之前 ,需要先进行用户注册成为本网站的会员,并提供用户的真实身份信息,以便用户订票的时候进行身份验证和绑定用户信息并生成订单; 2.用户通过网上注册后能够进行航班信息、机票信息的查询,网上预定机票,并查询自己的历史订单情况; 3.管理员登录系统后,能够实现航班的班次及航线信息的管理,对航班及航线的变动信息及时更新; 4.管理员能够实现对机票信息的管理,及时更新机票信息,能够根据实际航班客运量来进行调价; 5.用户界面需求,系统应提供用于工作明确的用户界面,并且尽可能地为用户操作提供方便。用户应能通过界面较容易地实现所需功能,尽可能为用户提示信息,在功能实现完善的基础上要求界面美观; 6.能够提供友好的客服服务,让更多的乘客了解我们的服务并反馈他们的宝贵意见,从而有利于提高航空公司的服务质量。 3.2航空售票系统的实现目标 1. 功能设计齐全,用户能够快速方便地注册为本网站的会员; 2. 设计高效的SQL查询语句,能根据用户查询的查询条件,实现快速地获取到他们所需的各种信息,并且能显示机票、航班的详细信息,方便乘客了解商品信息; 3. 智能化修改已售机票信息的状态,使已出售机票不再显示在用户查询信息中,做到了单张机票不重复卖出; 4. 预定机票的操作简单快捷,真正实现人性化的设计 5. 实现模拟网上支付功能,支付功能后自动修改订单的状态; 6. 用户支付成功后,可到订单管理界面查询自己历史订单; 7. 用户登录成功后,系统能记住用户的登录状态,如果出现临时断网重连网络后不需要再次登录本系统; 8. 界面设计美观,信息浏览灵活、方便、快捷; 9. 数据库设计合理,提供了高效、准确、快捷、灵活的信息查询接口,数据存储安全可靠; 10. 增加了客户服务信息栏,方便乘客能更多的了解我们的服务,从面得到更多的实惠; 11. 增加了返程机票信息查询功能,减少了乘客的查询次数; 12. 增加了订单查询功能,能让乘客随时查阅自己的历史订单情况; 13. 系统最大限度地实现易维护性和易操作性; 14. 系统运行稳定、安全可靠,不会出现不可预测的状态; 4.航空售票系统的总体设计 4.1系统的总体设计 4.1.1航空售票系统的业务流程 系统具体业务流程如图4.1.1.1所示: