毕业设计(论文)-ASP.NET航空售票电子商务论文

毕业设计(论文)-ASP.NET航空售票电子商务论文

ID:35588037

大小:1.84 MB

页数:41页

时间:2019-03-30

上传者:U-9364
毕业设计(论文)-ASP.NET航空售票电子商务论文_第1页
毕业设计(论文)-ASP.NET航空售票电子商务论文_第2页
毕业设计(论文)-ASP.NET航空售票电子商务论文_第3页
毕业设计(论文)-ASP.NET航空售票电子商务论文_第4页
毕业设计(论文)-ASP.NET航空售票电子商务论文_第5页
资源描述:

《毕业设计(论文)-ASP.NET航空售票电子商务论文》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

航空售票电子商务论文设计小组           二级学院    专  业       年级班级学  号      姓  名        指导教师        职称年月日摘要 随着因特网的发展,航空客运业务规模的日益宏大,传统售票方式已经不能满足时代的要求。本系统——航空售票系统,采用ASP.NET技术作为创建应用程序的方式,以C#作为编程语言,采用SQLServer数据库作为后台数据库。它是基于Browser/Server结构下形成的数据驱动的Web应用程序。不仅能方便旅客,还能节省航空公司的代理费用,加速资金周转。本系统基本遵循了软件工程方法论进行系统分析、总体设计、详细设计和软件测试。实现了后台管理员对航空公司、航班和订票信息的维护;前台客户通过注册登陆可以查询航班信息,进行订票和查看自己的购票信息并可以删除管理员未确认的订票信息。同时可以进行购票错误以后的退票信息等功能。关键词ASP.NET、C#、SQLServer2000、VS.NET2008、电子商务 AbstractWiththedevelopmentoftheInternet,aviationpassengertransport,theincreasinglygrandscaletraditionalticketingwayalreadycannotsatisfytheneedsofTheTimes.Thissystem-airticketingsystem,usingasp.nettechnologyascreatetheapplicationwaytoc#asaprogramminglanguage,usingSQLServerdatabaseasthebackenddatabase.Itisbasedonisclicked/Serverstructureformedunderthedata-drivenWebapplications.Notonlycanconvenienceforpassengers,stillcansaveairlinesagencycost,speedupthecapitalturnover.Thebasicsystemfollowsthesoftwareengineeringmethodologyforsystemanalysis,overalldesign,detaileddesignandsoftwaretesting.Realizedthebackendadministratorforairlines,flightsandbookinginformationmaintenance,Receptionistcustomersthroughtheregisterandlogincanqueryflightinformation,ticketingandviewtheirticketinformationandcandeletetheadministratorunrecognizedbookinginformation.Anothersystemalsorealizecustomeronlinemessage,administratoronlinereplyfunction.Keywords:Asp.net,C#,SQLServer2000,VSasp.net2008,E-commerce 目录第一章:绪论11.1课题背景以及研究意义:11.2网站开发的意义11.3国内外发展状况11.4国内外发展状况2第二章技术方案42.1C#简介52.2ASP.NET简介52.3数据库简介6第三章、需求分析103.1可行性分析103.2系统主要解决的问题103.3功能结构分析113.4系统目标12第四章、系统总体设计134.1系统开发环境134.2数据库144.3各个模块基本流程图设计174.3.1管理员模块174.3.2会员模块194.4输入输出设计204.4.1输入设计204.4.2输出设计21第五章、系统实现225.1系统主界面介绍225.2机票信息维护24}265.3订单管理265.4用户注册页面275.5购物车305.6用户订单31第六章、系统测试336.1概述336.1.1概念和意义336.1.2特性336.1.3重要性346.2本系统测试描述34结束语35致谢36参考文献37 第一章:绪论1.1课题背景以及研究意义:航空客运业务诞生已有近一个世纪了,作为现有交通工具中最方便快捷的一种,它确确实实地给民众的生活、出行带来了极大的方便。随着航空客运业务多年来的发展,其售票业务也同样不断地发展。回顾航空客运的历史,最早的时候,飞机和机场的数量都很少,于是机票的销售量也非常少,机票直接由机场方面出售,售票的方式也非常简单,现场购买领取机票即可;后来,随着世界经济城市的发展,飞机和机场数量的不断增加,随着世界贸易的开放繁荣、人们对飞机出行的需求和能力的不断增加,航空客运业务的规模日益宏大,于是为了方便客户的购票和航空公司的销售,航空公司在各地设立销售点,将机票分配到各销售网点销售。但是这也带来了许多问题和不便:首先,由于机票是由航空公司按照各销售点平时的销售能力分配给个销售点的,所以并不能实时地反映各销售点的销售情况,也很难实现各销售点间的调节,同时,乘客的询问和购票也产生很多不便。所以,随着航空客运业务的发展,传统售票方式已经不能满足时代的要求。1.2网站开发的意义因特网技术的飞速发展正在迅速地改变着人们的生活方式,因特网正在由科学工作者的工具变为普通百姓获取信息、进行交流的场所,而因特网的商业应用则尤为引人注目。航空公司在因特网上建立网上售票系统不仅方便了旅客,还节省了航空公司的代理费用,加速了资金周转,这为售票成本居高不下的航空公司带来了无限生机。网上售票的另一优点是扩充了航空公司的销售网点,使航空公司通过因特网将其销售网点扩展到全世界。1.3国内外发展状况37 世界范围的电子商务就如一场竞争激烈的竞技比赛,面对角逐这场比赛的企业来说,无论多么令人振奋的数字预测都是次要的,网络世界同样是一个现实的世界。早在1996年开始,就有一些具有远见的企业家敏感地意识到网络世界和现实世界同样充满了商机,他们开始在网上寻找商机,于是这些卓识为他们带来了巨大的经济效益。毫无疑问,电子商务已经成为目前最热门的技术,其热门的原因来源于其带来的巨大效益。专家预测,仅仅建立一个网上商店从事网上零售业就可以使全球从18亿美元的网上收入迅速膨胀到2002年的280亿美元。在北美和欧洲市场,电子商务的技术和市场认同基本上发育成熟网上商店在经过4年的发展后已经逐渐被广大网民所认同,据统计如今已经有近千万家庭通过网络来购买香水,而且每年都在成倍增长。我国的电子商务技术基础远不如欧美发达国家,然而我国发展电子商务的潜力十分巨大。特别是中国的企业通过在网上建立网上商店,运用电子商务技术开拓国际市场,不仅可为企业本身带来巨大的经济效益,在商务运作技术和市场领域上和先进国家保持同一水平,而且能为我国自身的电子商务技术和市场的成熟带来莫大帮助,这无疑不是最大的贡献。作为亚洲最大贸易大国之一,我国的电子商务是从1994年开始出现的,并且在随后六年发展相当迅速。据中国互联网信息中心公布数据表明,我国现有网民2250万人,网上商店800余家,另外证券公司、金融结算机构、民航订票、信用卡发放等机构和领域也已成功迈入了电子商务,并已经可以进行大量可靠的交易。虽然总体而言,我国电子商务仍处于初级阶段,企业之间的网络交易,企业和消费者之间网上购物尚处起步阶段,但随着Internet迅速发展,电子商务将成为国内Internet建设的一大热点。1.4国内外发展状况目前,网络应用软件运行的模式主要有二类:Client/server模式,Browser/Web模式。前者主要的缺点是维护、升级较麻烦,后者是近几年伴随Internet迅速发展起来的一种技术,它与客户/服务器方式类似,客户端是一个标准的浏览器,服务器端是WebServer,而WebServer与数据库和应用服务器的紧密结合,使得这种模式的应用范围不断扩大,它已不仅仅用于网上查询,有很多部门的业务系统、企业的MIS系统纷纷采用这种模式,它的主要优点是便于扩充应用、升级维护简便。另外,航空售票系统的软件也必将不断的更新;同时软件产品本身就要经过一个不断自我完善的过程。基于上述考虑,用Browser/Web模式来设计航空售票系统比较合适,服务器端我们采用SQLServer数据库系统和ASP组件来构成售票的应用服务系统;客户端采用浏览器来完成订票全过程,同时可进行远程系统维护和管理。利用网络和数据库技术,结合目前硬件价格普遍下跌与宽带网大力建设的有利优势,应用asp.net技术,开发了基于B/S模式航空售票系统这一程序。它运用方便、操作简单,效率很高。实现了后台管理员对航空公司、航班和订票信息的维护;前台客户通过注册登陆可以查询航班信息,进行订票和查看自己的购票信息并可以删除管理员未确认的订票信息。另外系统还实现了客户的在线留言,管理员在线回复的功能。37 37 第二章技术方案本系统前台利用VS2008开发。ASP.net是一个统一的Web开发模型,它包括您使用尽可能少的代码生成企业级Web应用程序所必需的各种服务。ASP.NET作为.NETFramework的一部分提供。当您编写ASP.NET应用程序的代码时,可以访问.NETFramework中的类。您可以使用与公共语言运行库CLR)兼容的任何语言来编写应用程序的代码,这些语言包括MicrosoftVisualBasic、C#、JScript.NET和J#。使用这些语言,可以开发利用公共语言运行库、类型安全、继承等方面的优点的ASP.NET应用程序[1]。ASP.NET页和控件框架是一种编程框架,它在Web服务器上运行,可以动态地生成和呈现ASP.NET网页。可以从任何浏览器或客户端设备请求ASP.NET网页,ASP.NET会向请求浏览器呈现标记(例如HTML)。通常,您可以对多个浏览器使用相同的页,因为ASP.NET会为发出请求的浏览器呈现适当的标记。但是,您可以针对诸如MicrosoftInternetExplorer6的特定浏览器设计ASP.NET网页,并利用该浏览器的功能。ASP.NET支持基于Web的设备(如移动电话、手持型计算机和个人数字助理((PDA))的移动控件。ASP.NET网页是完全面向对象的。在ASP.NET网页中,可以使用属性、方法和事件来处理HTML元素。ASP.NET页框架为响应在服务器上运行的代码中的客户端事件提供统一的模型,从而使您不必考虑基于Web的应用程序中固有的客户端和服务器隔离的实现细节[2]。该框架还会在页处理生命周期中自动维护页及该页上控件的状态。几乎所有的应用程序都需要访问从简单的文本文件到大型的关系型数据库等各种不同类型的数据。在Microsoft.NET中访问数据库的技术是ADO.NET。ADO.NET提供了一组用来连接到数据库、运行命令和返回记录集的类库,与从前的ADO(ActiveXDataObject)相比,Connection和Command对象很类似,而ADO.NET的革新主要体现在如下几个方面:首先,ADO.NET提供了对XML的强大支持,这也是ADO.NET的一个主要设计目标。在ADO.NET中通过XMLReader、XMLWriter和XMLNavigator等可以方便的创建和使用XML数据,并且支持W3C的XSLT、DTD和XDR等标准。ADO.NET对XML的支持也为XML成为Microsoft.NET中数据交换的统一格式提供了基础。其次,ADO.NET引入了DataSet的概念,这是一个驻于内存的数据缓冲区,它提供了数据的关系型视图。不管数据来源于一个关系型的数据库,还是来源于一个XML文档,我们都可以用一个统一的编程模型来创建和使用它。它替代了原有的RecordSet的对象,提高了程序的交互性和可扩展性,尤其适合于分布式的应用场合。37 另外,ADO.NET中还引入了一些新的对象,例如DataReader可以用来高效率的读取数据,产生一个只读的记录集等等。简而言之,ADO.NET通过一系列新的对象和编程模型,并与XML紧密结合,使得在Microsoft.NET中的数据操作十分方便和高效。数据库服务器是一个存取数据和管理数据的软件,它针对客户的请求为客户提供数据服务。这些服务包括数据插入、修改和查询等。客户对数据库服务器提出请求用的语言是SQL(StructuredQueryLanguage)。SQL是大多数数据服务器使用的查询语言。因此,C#.NET与数据库的关系是“配合”与“协调”的关系。C#.NET完成数据请求、数据表现、菜单和界面等表现方面的工作,而数据库服务器完成数据库数据的存储管理、安全管理、并发控制、事务管理、完整性维护和查询优化等工作。2.1C#简介C#(Csharp)是一种最新的、面向对象的编程语言。它使得程序员可以快速地编写各种基于Microsoft.NET平台的应用程序,Microsoft.NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。  正是由于C#面向对象的卓越设计,使它成为构建各类组件的理想之选——无论是高级的商业对象还是系统级的应用程序。使用简单的C#语言结构,这些组件可以方便的转化为XML网络服务,从而使它们可以由任何语言在任何操作系统上通过Internet进行调用。C#是一种现代的面向对象语言。它使程序员快速便捷地创建基于Microsoft.NET平台的解决方案。这种框架使C#组件可以方便地转化为XML网络服务,从而使任何平台的应用程序都可以通过Internet调用它。C#增强了开发者的效率,同时也致力于消除编程中可能导致严重结果的错误。C#使C/C++程序员可以快速进行网络开发,同时也保持了开发者所需要的强大性和灵活性。2.2ASP.NET简介ASP.NET是一种建立在通用语言上的程序构架,能被用于一台Web服务器来建立强大的Web应用程序。ASP.NET提供许多比现在的Web开发模式强大的的优势。ASP.NET文件是扩展名为.aspx的文本文件。在ASP.NET支持下,利用ADO.NET,开发者可方便地访问种种基于Web的数据库,不管数据源是关系数据库、非结构的数据库、文字数据库(如XML),还是如Microsoft37 Excel一样的表格数据库,都可以通过ADO.NET来存取。ASP.NET是使用.NET框架提供的类库构建而成的,它提供了一个Web应用程序模型,该模型由一组空间和一个基本结构组成。主要用来创建WebForms网页(扩展名为.aspx)和XMLWebServices,另外还有UserControls自定义用户控件(扩展名.ascx)。ASP.NET程序只能在服务器执行,当浏览器向服务器请求打开ASP.NET程序时,服务器会从磁盘上读取该程序,然后加以执行并将结果转换成浏览器兼容的Html文档,再将Html文档发给浏览器,但浏览器受到Html文档后,就将Html文档翻译成网页画面呈现在用户眼前。ASP.NET页和控件框架是一种编程框架,它在Web服务器上运行,可以动态地生成和呈现ASP.NET网页。可以从任何浏览器或客户端设备请求ASP.NET网页,ASP.NET会向请求浏览器呈现标记(例如HTML)。通常,您可以对多个浏览器使用相同的页,因为ASP.NET会为发出请求的浏览器呈现适当的标记。但是,您可以针对诸如MicrosoftInternetExplorer6的特定浏览器设计ASP.NET网页,并利用该浏览器的功能。ASP.NET支持基于Web的设备(如移动电话、手持型计算机和个人数字助理(PDA))的移动控件。ASP.NET网页是完全面向对象的。在ASP.NET网页中,可以使用属性、方法和事件来处理HTML元素。ASP.NET页框架为响应在服务器上运行的代码中的客户端事件提供统一的模型,从而使您不必考虑基于Web的应用程序中固有的客户端和服务器隔离的实现细节。该框架还会在页处理生命周期中自动维护页及该页上控件的状态[5]。2.3数据库简介SQLServer是由Microsoft开发和推广的关系数据库管理系统(DBMS),它最初是由Microsoft、Sybase、Ashton-Tate等三家公司共同开发的,并于1988年推出了第一个在OS/2版本上运行的SQLServer系统。1992年Sybase和Microsoft这两家公司将SQLServer移植到了WindowsNT操作系统上,后来Microsoft致力于WindowsNT平台的SQLServer的开发,而Sybase则专注于SQLServer在UNIX上的应用。近年来在MicrosoftSQLServer的发展历程中不断更新版本,有两个版本具有重要的意义。即是在1996年推出的SQLServer6.5版本和在2000年8月推出的SQLServer2000版本。6.5版本使得SQLServer得到广泛的应用,而2000版本在功能和易用性上有很大的增强,并推出了简体中文版,它包括企业版、标准版、开发版和个人版等4个版本SqlServer37 2000引入了三种新的数据类型,即64位整型数(bigint)、变量(sql_variant)和表格(table)数据类型。  1.64位整型数(bigint):在数据量越来越大的今天用以往的最大整型int长度231-1来表示整数已显得太不够用,而float也不是很合适,所以sql2000就有了新的整数类型--bigint。bigint数据类型是一个从-263到263-1整型量。bigint存储长度是8个字节,因此被称为64位整型量。您将使用这种新的整型量,以解决标识符超过先前最大整型量长度的场合。新的bigint数据类型适用的场合与整型数值完全一致,但要注意的是:如果参数表达式是一个bigint数据类型,函数将仅以bigint返回,而sql2000将不会自动地使其他整型数据类型(如tinyint,smallint和int等)升级为bigint数据类型。为了便于bigint数据类型的使用,sql2000又引入了两个新的内置式函数,即big_count和rowcount_big。这两个函数以一种类似于count函数和@@rowcount变量的方式进行运算。  2.变量(sql_variant):熟悉vbscript的人都知道,vbscript使用的是一种叫做variant的数据类型。它可以存放任何数据类型,数字、字符和对象等。sql2000里面的sql_variant还没有那么强大的功能,它不能存放blob的数据,如text、ntext和image,还有timestamp,但是已经给编程带来了很大的方便了。sql_variant数据类型能被用于列参数和变量,也能返回用户定义的函数的数值。sql_variant数据类型的运算更象visualbasic中的变量数据类型,允许一个单个参数或变量存储不同数据类型的数据值。  为了支持sql_variant数据类型,引入了被叫做sql_variant_property的新功能。此函数返回基本数据类型和有关sql_variant实例的其它信息:sql_variant_property(expression,property)。属性参数包括所提供的属性信息的sql_variant属性名。它能取自如下值中的任何一个,即基本类型、精度、数值、总字节、排序(collation)和最大字长(maxlength)。  sql_variant数据类型对于由程序管理的元数据(metadata)信息的应用极其有用。例如在一个集中了来自一个web用户的表格信息的asp应用程序,当此表格已经被处理、提炼过后,就不再用一个字符变量在数据库中存储表格值和所有相关元数据信息,您所要做的仅仅是以一个sql_variant来存储表格的值。在把变量存入数据库之前,要记住确定此变量:  dimvarname,varage  varname=cstr(request.form("txtname"))  varage=37 cint(request.form("txtage"))  3.表格(table)数据类型:新的表格数据类型是一个局部变量,它可以临时存储一个行集合(rowset),也能返回成一个表格值的函数,此表格数据类型能代替存储在tempdb数据库中的临时表格。因为新的数据类型是在内存中管理,而不是存储在硬盘上,因此大大提高了数据库性能。如果您定义了一个当地表格,您就可以像使用tempdb表格一样的方式使用它,不过它并不支持insertinto…exec和select…into语句。为了定义一个当地表格,您通常必须使用带有一个顺序表格定义的declare语句:declare@local_variabletable。在sql2000里面,用户可以建立自定义的函数,函数返回值可以是一个值,也可以是一个表。  可能大家还不是太清楚,自定义函数有什么作用。我们知道,为了优化数据库,需要我们尽量避免使用游标,因为这样会带来极大的系统开销。但有时候你必须使用游标,举一个例子,比如我希望得到一个内容是一段汉字字段的拼音。但是要想把汉字转化为拼音,必须通过查表来完成,那么你就必须利用一个游标,然后再对字段中的每一个字进行查表。但是现在我们可以使用自定义函数来完成同样的操作,就极大地节省了系统开销。数据完整性是指存储在数据库中的数据的一致性和准确性。SQLServer中数据的完整性可能会由于用户进行的各种数据操作而遭受破坏。一般往往通过定义约束来实现数据的完整性。约束是一种强制数据完整性的标准机制。使用约束可以确保在字段中输入有效数据并维护各表之间的关系。SQLSever支持下列五种约束。DEFAULT约束(默认约束)当向数据库表中插入数据时,如果没有明确的提供输入值时,SQLServer自动为该列输入指定值。CHECK约束(检查约束)通过逻辑表达式判断限制插入到列中的值。PRIMARY约束(主键约束)不允许数据库表在指定列上具有相同的值,且不允许有空值。FOREIGNKEY约束(外键约束)定义数据库表中指定列上插入或更新的数值必须在另一张被参照表中的特定列上的存在。UNIQUE约束(唯一约束)不允许数据库表在指定列上具有相同的值,但允许有空值。约束也被分为列约束和表约束两类。列约束是指只对某一列起作用的约束。当一个约束中包含了数据库表中一个以上的列时,称为表约束。37 第三章、需求分析3.1可行性分析可行性分析(FeasibilityAnalysis37 )也称为可行性研究,是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。(1)经济可行性:主要是对项目的经济效益进行评价,本系统开发经费在经济上是可以接受的,并且本系统实施后可以节省航空公司的代理费用,加速资金周转。所以本系统在经济上是可行的。(2)技术上的可行性:技术上的可行性分析主要分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。该管理系统采用了Browser/Server模式进行开发。Browser/Server体系结构紧密的结合了Internet/Intranet技术,是技术发展的大势所趋,它把应用系统带入了一个崭新的发展时代。数据库服务器SQL数据库,它能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。它的灵活性、安全性和易用性为数据库编程提供了良好的条件。因此,系统的软件开发平台已成熟可行。硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。综上所述,此系统开发目标已明确,在技术和经济等方面都可行,并且投入少、见效快。因此系统的开发是完全可行的。3.2系统主要解决的问题首先,因为售票是面向特定的某些对象的,所以用户进入系统应该进行身份验证——远程注册。注册完系统可以对自己的密码进行修改。然后,客户需查看航班信息进行订票,所以系统管理者需要对航班信息和订票信息进行维护,客户可以对自己不满意的票进行退票。3.3功能结构分析此系统主要可以实现电子商务的基本流程,以及电子商务网的后天管理功能,主要有以下几点:ü后台:(1)会员维护:管理注册网站的会员信息;(2)会员充值:管理员可以给会员充值累计的预备金额;(3)机票分类:维护机票的分类信息。(4)机票信息:维护机票信息,可以添加或者删除机票信息;37 (1)订单审核:管理会员的订单信息列表可以察看订单信息和审核订单;(2)退票管理:处理会员的退票信息;(3)票据超期查询:查询显示一些没有付款的的订单记录,条件是起飞日期超过当前日期;ü前台:(1)会员注册登录:填写会员信息并注册到机票预订网中。(2)产品展示:包括展示机票类别和机票信息。(3)可以点击机票信息进入机票信息详细页面,如果喜欢这个机票的话还可以放入购物车(4)查看购物车机票信息,可以删除已经放入购物车的机票,生成订单。(5)订单付款:会员通过管理员确认的订单可以进行付款操作。(6)退票:如果因为意外的原因您需要退票的话,可以点击相应的订单进行退票的操作。下面通过系统的功能模块图(如图3.1所示)来进一步描述系统功能。37 功能模块图3.4系统目标电子商务的涵盖十分广泛的商业行为,从电子银行到信息化的物流管理。电子商务的增长促进了支持系统的发展和进步,包括后台支持系统、应用系统和中间件,例如宽带和光纤网络、供应链管理模块、原料规划模块、客户关系管理模块、存货控制模块和会计核算/企业财务模块。本系统就是想通过已经成熟的电子商务模式,开发出一套方便快捷的机票网店系统,不同的人群足不出户的就可以买到自己的机票信息!第四章、系统总体设计4.1系统开发环境ü硬件环境为了充分使用图书馆现有软硬件资源,在保障系统稳定、高效运行的前提下,达到降低成本的目的。根据系统需求,设定了系统的运行环境。硬件环境:(1)对CPU的要求最低配置酷睿双核2.8HZ(2)对内存的要求建议内存容量2G以上(3)对硬盘的要求建议配置120GB容量以上硬盘37 ü软件环境(1)服务器操作系统Windows2003Server/Windows2008Server,建议在全新安装的操作系统上安装数据库服务器(2)客户机操作系统WindowsXP/WindowsVista/Windows7(3)数据库管理系统SqlServer以上版本(推荐)(4)其他支持软件.NETFramework(2.0以上版本)、VisualStudio2008。ü开发工具对于模块各个系统,我们采用统一的开发平台(.NET开发平台)作为开发支撑平台,以提高开发效率。该开发平台具有以下特点:(1)该平台采用组件技术,系统具有非常好的可扩充性,对新技术的发展也具有很好的适应性。这是因为采用了组件技术后,可以开发出各种共享组件和通用组件,也可以集成第三方开发的组件,组件的升级也非常方便,而且随着组件技术的标准化,不同的组件标准之间也可以实现通讯。(2)该平台采用了三层结构的技术框架,为应用系统提供了一个非常良好的结构,应用系统将来的升级、扩充、修改和定制都非常方便。当用户需要发生变化或需要对某个功能进行修改的时候,可能只需要对某一个层次的组件进行修改,而不会对整个系统的结构发生影响。(3基于该平台的应用框架,应用系统开发员可以集中精力开发业务层组件,不需要过多地考虑各种技术问题和其他方面的实现细节,也提高了业务层组件的独立性,减少与其他模块的关联,便于将来扩充、升级和修改。(4)从界面层到数据层,该平台都充分体现了业务对象之间的各种关系(一对一、一对多、多对多等),并且提供了充分的实现手段,使得应用系统实现业务对象之间的复杂的逻辑关系成为可能,而且非常简单。方便了业务系统。(5)该平台在很多方面提供了通用的模式和技术规范,如组件设计、数据库设计、界面设计等,可以为应用系统的开发提供有效的指导和参考。(6)37 由于该平台提供了统一的模式和共享组件,减少了应用系统开发的难度、减少了应用系统开发的模块,因而能够准确地控制应用系统开发的过程,有效地提高应用系统开发的质量。4.2数据库MicrosoftSQLServer2000它为数据库管理员提供了多个管理系统的工具,包括:1)SQLServer企业管理器它是Microsoft管理控制台(MMC)的管理单元组件,利用它可对数据库服务器、数据库及数据库对象(表、视图等)进行有效的管理。2)SQL查询分析器它用于交互输入T-SQL语句和存储过程,可以以图形的形式提供图形查询分析功能,包含集成的T-SQL调试器、对象浏览器,可用于确定数据库中的表、视图、存储过程和其他对象的特性,并支持可用于加快复杂语句生成速度的模板。3)注册服务器安装SQLServer2000后,必须先注册本地或远程服务器,才能使用SQLServer企业管理器来管理这些服务器。注册服务器时必须指定服务器的名称和登录到服务器时使用的安全类型。4.2.1数据库设计表名:glyxx表名说明:管理员信息序号字段名字段说明标识主键类型长度小数位数允许空1dlm登录名 √varchar500 2mm密码  char100√表名:gwcxx表名说明:购物车信息序号字段名字段说明标识主键类型长度小数位数允许空1gwcbh购物车编号√√int100 2hydlm会员账号  varchar500√3spbh机票编号  int100√4sl数量  int100√表名:hyddhz表名说明:会员订单序号字段名字段说明标识主键类型长度小数位数允许空1ddbh订单编号 √int160 2hydlm会员登录名  varchar500√3jpbh机票编号  int100√4sl数量  int   5je金额  float   4ddrq订单日期  datetime233√5qddd确定订单  varchar500√6fk付款  varchar500√37 7zf作废时间  datetime500√表名:hyxx表名说明:会员信息序号字段名字段说明标识主键类型长度小数位数允许空1hydlm会员登录名  varchar500√2mm密码  varchar500√3xm姓名  varchar500√4xb性别  varchar500√5dz地址  varchar500√6dh电话  varchar500√8emailEMail  varchar500√9ycj初始预付金  decimal180√10sfzh身份证号  varchar500√11ljycj累计预付金  decimal180√表名:spflxx表名说明:商品分类信息序号字段名字段说明标识主键类型长度小数位数允许空1spflbh机票分类编号√√int100 2spflmc机票分类名称  varchar500√表名:spxx表名说明:商品信息序号字段名字段说明标识主键类型长度小数位数允许空1jpbh机票编号√√int100 2spmc航班  varchar500√4spflbh机票分类编号  int100√5spjg机票价格  float530√6hc航程  varchar20000√7sftdc是否头等舱  varchar   8sfyz是否硬座  varchar   9qfsj起飞时间  datetime 0√10ddsj到达时间  datetime   11zps总票数  int 0√12syps剩余票数  int 0√表名:tp表名说明:退票序号字段名字段说明标识主键类型长度小数位数允许空1tpbh退票编号√√int100 2ddbh订单编号      3tprq退票日期  varchar500√37 4tpsl退票数量  varchar5000√5tpje退票金额  varchar20000√6qqtp确认退票  varchar20000√4.2.2数据库E—R图设计系统E-R图4.3各个模块基本流程图设计4.3.1管理员模块Ø机票类别维护37 机票类别维护Ø机票信息维护机票信息维护37 Ø订单信息管理订单信息管理4.3.2会员模块Ø会员注册会员注册Ø会员订票37 会员订票Ø会员退票会员订票4.4输入输出设计4.4.1输入设计输入设计代表性页面是主界面的登陆窗口,输入用户名、密码等待验证,如图:37 系统登陆界面4.4.2输出设计输出设计代表性页面是展示详细机票信息页面,如图:37 展示页面第五章、系统实现5.1系统主界面介绍在IE里运行本系统,出现系统的主界面,包括系统登陆、产品类别、产品信息显示列表三大模块。如图:37 系统主界面核心代码如下:protectedvoidImageButton1_Click(objectsender,ImageClickEventArgse){//判断登陆人员的密码和用户是不是正确if(txtusername.Text.Trim().ToLower()=="administrator"){DataTabletmpda=newDataTable();tmpda=DataBase.Get_Table("select*fromglyxxwheredlm='"+this.txtusername.Text.Trim()+"'andmm='"+this.txtpassword.Text.Trim()+"'");if(tmpda.Rows.Count<=0){Response.Write("");return;}else{Session["UserName"]="系统管理员";}}else{37 DataTabletmpda=newDataTable();tmpda=DataBase.Get_Table("select*fromhyxxwherehydlm='"+this.txtusername.Text.Trim()+"'andmm='"+this.txtpassword.Text.Trim()+"'");if(tmpda.Rows.Count<=0){Response.Write("");return;}else{Session["UserName"]=tmpda.Rows[0]["xm"].ToString();}}//保存用户名到公用SessionSession["UserID"]=this.txtusername.Text.Trim();Response.Redirect("index.aspx");}protectedvoidImagebutton3_Click(objectsender,ImageClickEventArgse){Session.Remove("UserID");Session.Remove("UserName");Session.Remove("PersonType");Response.Redirect("index.aspx");}publicvoidBindFLXX(){DataTabletmpda=newDataTable();tmpda=DataBase.Get_Table("select*fromspflxx");DataList4.DataSource=tmpda;DataList4.DataBind();}5.2机票信息维护此模块主要是对产品信息的维护。展示机票信息列表,可以添加修改和删除机票信息。如图:37 机票信息列表界面核心代码如下:protectedvoidPage_Load(objectsender,EventArgse){//在此处放置用户代码以初始化页面if(!Page.IsPostBack){//绑定类别列表this.drFL.DataTextField="spflmc";this.drFL.DataValueField="spflbh";this.drFL.DataSource=DataBase.Get_Table("select*fromspflxx");this.drFL.DataBind();if(Request.QueryString["ID"]!=null){//显示当前的机票信息DataTabletmpda=newDataTable();tmpda=DataBase.Get_Table("select*fromspxxwherejpbh="+Request.QueryString["ID"]);if(tmpda.Rows.Count>0){this.txtJPMC.Text=tmpda.Rows[0]["spmc"].ToString();this.drFL.SelectedValue=tmpda.Rows[0]["spflbh"].ToString();this.txtJPJG.Text=tmpda.Rows[0]["spjg"].ToString();this.txtHC.Text=tmpda.Rows[0]["hc"].ToString();this.rdTDC.SelectedValue=tmpda.Rows[0]["sftdc"].ToString();this.rdYZ.SelectedValue=tmpda.Rows[0]["sfyz"].ToString();this.txtQFSJ.Text=tmpda.Rows[0]["qfsj"].ToString();this.txtDDSJ.Text=tmpda.Rows[0]["ddsj"].ToString();37 this.txtJPZS.Text=tmpda.Rows[0]["zps"].ToString();this.txtJPZS.ReadOnly=true;}}}}protectedvoidButton1_Click(objectsender,EventArgse){//判断信息是否正确if(this.txtJPMC.Text.Trim()==""){Page.ClientScript.RegisterStartupScript(this.GetType(),"info","");return;}//根据标志判断是添加还是修改的操作保存机票信息if(Request.QueryString["ID"]!=null){DataBase.ExecSql("UPDATE[spxx]set[spmc]='"+txtJPMC.Text+"',[spflbh]="+drFL.SelectedValue+",[spjg]="+txtJPJG.Text+",[hc]='"+txtHC.Text+"',[sftdc]='"+rdTDC.SelectedValue+"',[sfyz]='"+drFL.SelectedValue+"',[qfsj]='"+txtQFSJ.Text+"',[ddsj]='"+txtDDSJ.Text+"'wherejpbh="+Request.QueryString["ID"]);}else{DataBase.ExecSql("INSERTINTO[spxx]([spmc],[spflbh],[spjg],[hc],[sftdc],[sfyz],[qfsj],[ddsj],[zps],[syps])VALUES('"+txtJPMC.Text+"',"+drFL.SelectedValue+","+txtJPJG.Text+",'"+txtHC.Text+"','"+rdTDC.SelectedValue+"','"+rdYZ.SelectedValue+"','"+txtQFSJ.Text+"','"+txtDDSJ.Text+"',"+txtJPZS.Text+","+txtJPZS.Text+")");}Page.ClientScript.RegisterStartupScript(this.GetType(),"info","");}5.3订单管理37 此模块可以查看定购机票的用户信息,及该用户定购机票的详细信息,可以删除不符合要求订单信息。如图:订单信息管理核心代码如下:publicpartialclassadmin_orderdetail:System.Web.UI.Page{protectedvoidPage_Load(objectsender,EventArgse){aa();bindgr();}publicvoidbindgr(){Model.orderdetailmyorderdetail=newModel.orderdetail();myorderdetail.ordernum=pronum.Text;BLL.BLLorderupdateblll=newBLL.BLLorderupdate();DataSetds=blll.bindgr(myorderdetail);GridView1.DataSource=ds.Tables[0];GridView1.DataBind();}publicvoidaa(){Model.ordermyorder=newModel.order();myorder.id=Convert.ToInt32(Request.QueryString["id"]);BLL.BLLorderupdateblll=newBLL.BLLorderupdate();SqlDataReaderdr=blll.readorder(myorder);if(dr.Read()){proid.Text=dr["_id"].ToString();needbill.Text=dr["_needbill"].ToString();37 waysgive.Text=dr["_waysgive"].ToString();pronum.Text=dr["_ordernum"].ToString();ordertime.Text=dr["_ordertime"].ToString();sellremarks.Text=dr["_sellremarks"].ToString();count.Text=dr["_count"].ToString();address.Text=dr["_address"].ToString();sumpric.Text=dr["_sumprice"].ToString();name.Text=dr["_name"].ToString();tel.Text=dr["_tel"].ToString();mobile.Text=dr["_mobile"].ToString();buyremarks.Text=dr["_buyremarks"].ToString();mail.Text=dr["_mail"].ToString();}dr.Close();}protectedvoidButton1_Click(objectsender,EventArgse){Response.Redirect("orderselect.aspx");}}5.4用户注册页面此模块主要是提供新用户信息注册。用户注册信息时,判断帐号,真实姓名是否为空,输入的密码和确认密码是否一致。然后输入密码、确认密码、联系电话、家庭地址、出生日期等,注册和返回操作。如图:37 用户注册核心代码如下:if(Page.IsValid==true){Model.usermod=newModel.user();mod.email=TextBox7.Text;BLL.userbk=newBLL.user();SqlDataReaderdr=bk.pp(mod);if(dr!=null){if(dr.Read()){Common.MessageAlert.Alert(Page,"该邮箱号已存在!");TextBox7.Text="";dr.Close();}else{37 Model.usermo=newModel.user();mo.email=Server.HtmlEncode(TextBox7.Text);mo.pwd=Server.HtmlEncode(TextBox6.Text);mo.username=Server.HtmlEncode(TextBox8.Text);mo.qq=Server.HtmlEncode(TextBox2.Text);mo.msn=Server.HtmlEncode(TextBox3.Text);mo.safequestion=Server.HtmlEncode(TextBox4.Text);mo.safepwd=Server.HtmlEncode(TextBox5.Text);BLL.userbll=newBLL.user();inti=bll.insert(mo);if(i>0){Common.MessageAlert.AlertLocation(Page,"alert('注册成功');location.href='Login.aspx'");Model.usermod1=newModel.user();mod1.email=TextBox7.Text;BLL.userblluser=newBLL.user();SqlDataReaderdr1=blluser.drid(mod1);if(dr1.Read()){Session["_userid"]=dr1["_userid"].ToString();dr1.Close();}dr1.Close();Model.addressmoadd=newModel.address();moadd.userid=Convert.ToInt32(Session["_userid"]);BLL.daladdressbld=newBLL.daladdress();intf=bld.upada(moadd);TextBox2.Text="";TextBox3.Text="";TextBox4.Text="";TextBox5.Text="";TextBox6.Text="";TextBox7.Text="";TextBox8.Text="";TextBox9.Text="";}else{37 Common.MessageAlert.Alert(Page,"注册失败!");}}}5.5购物车此模块显示已经选择完但未生成订单的机票信息列表,显示此次购物的总数量和总金额。可以对其生成定单,删除操作。如图:购物车核心代码如下:publicvoidaa(){doublewholeprice=0;doublewholeweight=0;Labelsumweight=newLabel();Labelsumprice=newLabel();wholeprocount.Text=GridView1.Rows.Count.ToString();for(inti=0;i0){Common.MessageAlert.Alert(Page,"删除成功!!");pp();}else{Common.MessageAlert.Alert(Page,"删除失败!!");}}}protectedvoidImageButton1_Click(objectsender,ImageClickEventArgse){}protectedvoidAspNetPager1_PageChanging(objectsrc,Wuqi.Webdiyer.PageChangingEventArgse){AspNetPager1.CurrentPageIndex=e.NewPageIndex;pp();}37 第六章、系统测试6.1概述6.1.1概念和意义测试的定义:程序测试是为了发现错误而执行程序的过程。测试(Testing)的任务与目的可以描述为:目的:发现程序的错误;任务:通过在计算机上执行程序,暴露程序中潜在的错误。另一个预测是相关的术语叫纠错(Debugging)。它的目的与任务可以规定为:目的:定位和纠正错误;任务:消除软件故障,保证程序的可靠运行。测试与纠错的关系,可以用图6-1的数据流图来说明。图中表明,每一次测试都要准备好若干必要的测试数据,与被测试程序一道送入计算机执行。通常把一次程序执行需要的测试数据,称为一个“测试用例(TestCase)。每一个测试用例产生一个相应的“测试结果”。如果它与“期望结果”不想符合,便说明程序中存在错误,需要用纠错来改正。测试评价纠错系统测试数据测试结果错误信息改正信息期望结果图6.1测试与纠错信息流程6.1.2特性(1)挑剔性测试是为了证明程序有错,而不是证明程序无错。因此,对于被测程序就是要“纯毛求疵”,就是要“鸡蛋里挑骨头”。(2)复杂性测试仪程序则比较容易,这其实是一个误区。设计测试用力是一项需要细致和高度技巧的高能工作,稍有不慎就会顾此失彼,发生不应用得数楼。37 (3)不彻底性实际测试都是不彻底的,当然不能够保证测试后的程序不存在遗漏的错误。(4)经济性通场这种测试称为“选择测试(SelectiveTesting)”。为了降低测试成本,选择测试用力是应注意遵守“经济性”的原则。6.1.3重要性软件测试在软件生命周期中占据重要的地位,在传统的瀑布模型中,软件测试学仅处于运行维护阶段之前,是软件机票交付用户使用之前保证软件质量的重要手段。近来,软件工程界趋向于一种新的观点,即认为软件生命周期每一阶段中都应包含测试,从而检验本阶段的成果是否接近预期的目标,尽可能早的发现错误并加以修正,如果不在早期阶段进行测试,错误的延时扩散常常会导致最后成品测试的巨大困难。6.2本系统测试描述为了使本软件运行更加稳定,我对它进行了全面的测试,测试分为二部分来进行,一是:界面测试;二是功能测试。首先是界面测试,为了使软件在不同的的操作系统平台上运行界面能保持原来的风格。我把完整程序拷贝到WindowsXPPro环境下,程序运行界面正常,界面上的字体等设置都保持得相当好。没有出现类似字体变形的情况!二是进行功能的测试。本系统测试采用了单元测试,集成测试,完善性测试等多种方式进行测试。经过测试,所有功能都能得以实现,没有任何变形。至此,在功能的测试上也已经比较圆满的完成了。37 结束语通过本次毕业设计我了解了Web开发模式,工作原理及发展的历史,对Web数据库的结构和Web服务器与数据库的几种互连技术有了全面的认识。在几个月的系统开发和论文撰写过程中,通过查阅、研究大量的相关文献,分析相关领域的特色网站并结合实际,然后按照软件工程的严格要求,对本航空售票系统进行了需求分析,概要设计,详细设计,编码与测试等方面进行分析和讨论,初步建立了一个模拟的航空售票系统。建立数据库通过SQL语句对数据库中的信息进行调用,以及把网站信息及时的存储入数据库表单中。由于Asp页功能强大,处理方式灵活,对客户浏览要求较低,传送到客户端的只是解释后的html页面,保护了页面开发者的知识产权,因此本系统页面大多采用Asp页。当然由于时间有限,这个系统还不够完善,还有许多地方有待改进,恳请各位老师批评赐教。。37 致谢在本次毕业设计中,使我理会到软件工程在项目开发中各个环节的具体应用,并对使用C#开发数据库应用程序的方法和技巧有了更一步的掌握。这一切的知识积累离不开指导老师认真负责的工作态度,严谨的治学精神和深厚的理论水平,在此向他表示我深深的谢意,同时也感谢给过我支持、帮助的同学。最后借此机会也向所有关心和指引我成长的老师致以崇高的敬意!!37 参考文献[1]DUSANPETKOVIC.《SQLServer2000基础教程》[M].清华大学出版社[2]黄梯云.《SQLServer2000实用教程》[M].人民邮电出版社[3]孙永强戴锋陈宗斌.2002《VisualC#.NET程序设计基础》[M].清华大学出版社,2002[4][英]夏普.《VisualC#2005从入门到精通》[M].周靖译.清华大学出版社,2006[5][英]费森.《VisualC#基于组件的开发》[M].战晓苏译.清华大学出版社,2003[6]李律松马传宝李婷.《VisualC#+SQLServer数据库开发与实例》[M].清华大学出版社,2006[7]KarliWatson.《C#入门经典》[M]康博译.清华大学出版社,2002[8]A.RussellJones[美].《ASP.NET与C#从入门到精通》[M].电子工业出版社,2003[9]霍夫曼(HoffmanK.)[美]科鲁格(KrugerL.)[美].《C#.NET技术内幕》[M]董梁高猛译.清华大学出版社,2006[10]罗会涛.《精通MSSQLSERVER7.0》[M].电子工业出版社,2005[11]范国平陈晓鹏.《SQL数据库系统开发实例导航》[M].人民邮电出版社,2006[12]李晓哲张晓辉李祥胜.《SQLServer2000管理及应用系统开发》[M].人民邮电出版社[13]黄荣怀刘黄玲子等.《计算机辅助评价的发展趋势》[M].电化教育研究,2002[14]RonPatton[美].《软件测试》[M],机械工业出版社,200037

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭