基于Web+Services的商务网站研究Word下载.docx
《基于Web+Services的商务网站研究Word下载.docx》由会员分享,可在线阅读,更多相关《基于Web+Services的商务网站研究Word下载.docx(85页珍藏版)》请在冰豆网上搜索。
three-tierarchitecture,components,WebServices,onlinebookshop,ASP.NET
目录
摘要I
第一章绪论-1-
第二章相关知识-3-
2.1ASP.NET简介-3-
2.1.1ASP.NET的新性能-3-
2.2XMLWebService简介-4-
2.2.1简单对象访问协议--SOAP-5-
2.2.2Web服务描述语言--WSDL-6-
2.2.3通用发现、说明和集成――UDDI-7-
第三章网站功能分析及设计-9-
3.1需求分析-9-
3.2总体体系结构图-9-
3.3网站功能模块设计-10-
3.4网站功能模块示意图-11-
3.4.1图书管理模块示意图-11-
3.4.2购物车管理模块示意图-14-
3.4.3订单管理模块示意图-14-
3.4.4用户管理模块示意图-17-
3.4.5管理员信息管理模块示意图-19-
第四章网站数据库层设计及实现-21-
4.1数据库分析-21-
4.2数据库设计-23-
4.2.1数据表设计-23-
4.2.2各数据表的相互联系-26-
第五章中间层设计及实现-27-
5.1dataBaseWebService-27-
5.1.1功能描述-27-
5.1.2接口描述-27-
5.1.3设计过程及编码-28-
5.1.4测试-31-
5.1.5客户端调用-33-
5.2bookWebService-33-
5.2.1功能描述-33-
5.2.2接口描述-33-
5.2.3设计过程及编码-34-
5.2.4测试-43-
5.2.5客户端调用-44-
5.3其它Web服务-44-
5.3.1commentWebService-44-
5.3.2orderWebService-44-
5.3.3customerWebService-45-
5.3.4adminWebService-46-
第六章表示层设计及实现-49-
6.1clientWebApplication应用程序-49-
第七章系统部署-65-
7.1部署前的准备-65-
7.1.1创建Web安装程序-65-
7.1.2数据库的备份-68-
7.1.3运行环境的配置-69-
7.2部署图-69-
7.2.1表示层部署图-69-
7.2.2中间层部署图-70-
7.3部署过程-70-
7.3.1表示层部署过程-70-
7.3.2中间层部署过程-71-
7.3.3数据库部署过程-72-
7.4部署完成的测试-73-
结论-75-
参考文献:
-77-
致谢-79-
附录A搭建开发平台和运行环境-81-
A.1Windows.NETFramework安装-81-
A.2MicrosoftVisualStudio.NET2003安装-82-
A.3MicrosoftSQLServer2000安装-84-
A.4客户端软件安装-86-
附录B工作说明-87-
第一章绪论
.NET是微软公司的XMLWeb服务平台,它是为了解决互联网应用存在的普通问题而预先建立的基础设施。
即将程序开发的侧重点从连接到互联网的单一网站或设备上,转移到计算机、设备和服务群组上,使其通力合作,提供更加广泛、更加丰富的解决方案。
用户将能够控制信息的传送方式、时间和内容。
计算机、设备和服务将能够相辅相成,从而提供丰富的服务,而不是像信息孤岛那样,由用户提供惟一的集成。
网上商店,目前已累见不鲜,但基于WebServices并在.NET平台上开发的就寥若晨星。
本次毕业设计题目:
“基于WebServices的商务网站研究”,主要目的是通过在.NET平台上开发网站这一实例详细介绍WebServices的应用及功能。
通过实际的操作深入了解WebServices这一现今流行的技术,当然也包括学习Web服务器控件、用户控件、数据绑定技术、多层分布式设计等。
本网上书店系统是基于集中统一规划的数据库数据管理新模式设计的。
在对书本、用户、订单、管理员信息的管理,其实是对书本、用户、订单、管理员数据的管理。
它的开发过程也就是多层分布式应用程序的创建过程,其中包括:
数据层、中间层、表示层,开发多层分布式应用程序的一个可能的方案是一次创建一层,多半是从数据层开始,然后移到中间层业务规则对象,最后创建用户界面层。
对于开发工具我们选择:
InternetInformationServices6.0(IIS6.0)+MicrosoftVisualStudio.NET2003+MicrosoftSQLServer2000。
在附录里,我们会介绍他们的安装过程。
本网上书店的整个设计及实现过程,我们采取的是分工合作的模式:
陈棣燃同学负责表示层的设计及实现;
陈韶记同学负责中间层和数据层的设计及实现。
相应的,该论文的编写,我们采取的是谁做那块,就负责那块的编写,而其余部分,就是大家共同努力的结果了。
详细分工,请参看附录B工作说明。
第二章相关知识
2.1ASP.NET简介
ASP.NET是Microsoft.NET的一部分,作为战略产品,不仅仅是ActiveServerPage(ASP)的下一个版本;
它还提供了一个统一的Web开发模型,其中包括开发人员生成企业级Web应用程序所需的各种服务。
ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。
可以通过在现有ASP应用程序中逐渐添加ASP.NET功能,随时增强ASP应用程序的功能。
ASP.NET是一个已编译的、基于.NET的环境,可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和JScript.NET等)创作应用程序。
另外,任何ASP.NET应用程序都可以使用整个.NETFramework。
开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。
ASP.NET可以无缝地与WYSIWYGHTML编辑器或其他编程工具(包括MicrosoftVisualStudio.NET)一起工作。
这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到Web页的GUI(GraphicalUserInterface的简称,即图形用户接口)和完全集成的调试支持。
微软为ASP.net设计了这样一些策略:
易于写出结构清晰的代码、代码易于重用和共享、可用编译类语言编写等等,目的是让程序员更容易开发出Web应用,满足计算向Web转移的战略需要。
2.1.1ASP.NET的新性能
ASP.NET提供了稳定的性能、优秀的升级性、更快速的开发、更简便的管理、全新的语言以及网络服务。
贯穿整个ASP.NET的主题就是系统帮用户做了大部分不重要的琐碎的工作。
●全新的构造新的ASP.NET引入代码托管(ManagedCode)这样一个全新概念,横贯整个视窗开发平台。
受管代码在NGWSRuntime下运行,而NGWSRuntime是一个时间运行环境,它管理代码的执行,使程序设计更为简便。
●高效率对于一个程序,速度是一件非常令人渴望的东西。
一旦代码开始工作,接下来你就得尽可能地让它运作得快些快些再快些。
在ASP中你只有尽可能精简你的代码,以至于不得不将它们移植到一个仅有很少一点性能的部件中。
而现在,ASP.NET会妥善地解决这一问题。
●易控制在ASP.NET里,你将会拥有一个“Data-Bounds”(数据绑定),这意味着它会与数据源连接,并会自动装入数据,使控制工作简单易行。
●语言支持ASP.NET支持多种语言,支持编译类语言,支持比如VB、VC++、C#等,它比这些编译类语言运行速度快,更适合编写大型应用。
●更好的升级能力快速发展的分布式应用也需要更快速、更模块化、更易操作、更多平台支持和重复利用性更强的开发,需要一种新的技术来适应不同的系统,网络应用和网站需要提供一种更加强大的可升级的服务。
ASP.NET能够适应上面的要求。
●让你的生活更简单对于今天的Web程序员来说,最大的挑战就是不断变化的浏览器兼容性以及它们不断升级的复杂性。
在保证页面能在所有浏览器下工作的同时,又得尽量使用每个浏览器的最新属性来建立更具交互性的页面,这简直就是一场噩梦。
更加可怕的是,需要对不同的用户设备建立不同的网页。
最简单的解决办法就是动态地对不同的用户生成不同的输出,或者就是对不同的用户写多个页面。
大多数开发者都会选择第一种方法。
但是,这就意味着用户的每次点击都会让服务器判断应该向用户显示什么。
而通过ASP.NET,我们可以看到一个新的服务控制的概念,它封装了一些普通的任务,提供了一种清晰的编程模块,有助于管理和处理不同的用户类型。
简单地说,ASP.NET把这些过程自动化了。
2.2XMLWebService简介
XMLWebService是在Internet上进行分布式计算的基本构造块,它通过SOAP在Web上提供软件服务,使用WSDL文件进行说明,并通过UDDI进行注册。
开放的标准以及对用户和应用程序之间的通信和协作的关注产生了这样一种环境,在这种环境下,XMLWebService成为应用程序集成的平台。
应用程序是通过使用多个不同来源的XMLWebService构造而成的,这些服务相互协同工作,而不管它们位于何处或者如何实现。
XMLWebService体系结构的主要优点之一是:
允许在不同平台上、以不同语言编写的各种程序以基于标准的方式相互通信。
相对以前的方案而言,XMLWebService的另一大优点是使用标准的Web协议:
XML、HTTP和TCP/IP。
许多公司都已经建立了Web基础结构,同时它们的员工在维护方面也都具备相应的知识和经验。
因此,引入XMLWebService与引入以前的技术相比,其成本要低得多。
有多少个构建XMLWebService的公司,就可能有多少种XMLWebService定义。
不过几乎所有定义都具有以下共同点:
●XMLWebService通过标准的Web协议向Web用户提供有用的功能。
多数情况下使用SOAP协议。
●XMLWebService可以非常详细地说明其接口,这使用户能够创建客户端应用程序与它们进行通信。
这种说明通常包含在称为Web服务说明语言(WSDL)文档的XML文档中。
●XMLWebService已经过注册,以便潜在用户能够轻易地找到这些服务,这是通过通用发现、说明和集成(UDDI)来完成的。
接下来我们就介绍一下这三种技术。
2.2.1简单对象访问协议--SOAP
SOAP(SimpleObjectAccessProtocol)是XMLWebService的通信协议。
它是一种规范,用来定义消息的XML格式,这是规范中所必需的部分。
包含在一对SOAP元素中的、结构正确的XML段就是SOAP消息。
SOAP规范的其他部分介绍如何将程序数据表示为XML,以及如何使用SOAP进行远程过程调用(RPC)。
这些可选的规范部分用于实现RPC形式的应用程序,其中客户端将发出一条SOAP消息(包含可调用函数,以及要传送到该函数的参数),然后服务器将返回包含函数执行结果的消息。
目前,多数SOAP实现方案都支持RPC应用程序,这是因为习惯于开发COM或CORBA应用程序的编程人员熟悉RPC形式。
SOAP还支持文档形式的应用程序,在这类应用程序中,SOAP消息只是XML文档的一个包装。
文档形式的SOAP应用程序非常灵活,许多新的XMLWebService都利用这一特点来构建使用RPC难以实现的服务。
SOAP规范的最后一个可选部分定义了包含SOAP消息的HTTP消息的样式。
此HTTP绑定非常重要,因为几乎所有当前的OS(以及许多以前的OS)都支持HTTP。
HTTP绑定虽然是可选的,但几乎所有SOAP实现方案都支持HTTP绑定,因为它是SOAP的唯一标准协议。
由于这一原因,人们通常误认为SOAP必须使用HTTP。
其实,有些实现方案也支持MSMQ、MQ系列、SMTP或TCP/IP传输,但由于HTTP非常普遍,几乎所有当前的XMLWebService都使用它。
由于HTTP是Web的核心协议,因此大多数组织的网络基础结构都支持HTTP。
如今,已经建立了用于HTTP的安全保护、监视和负载平衡的基础结构。
开始使用SOAP时,最容易混淆的是SOAP规范及其许多实现方案之间的差异。
多数使用SOAP的用户并不直接编写SOAP消息,而是使用SOAP工具包来创建和分析SOAP消息。
这些工具包通常将函数调用从某种语言转换为SOAP消息。
例如,MicrosoftSOAPToolkit2.0将COM函数调用转换为SOAP,而ApacheToolkit将JAVA函数调用转换为SOAP。
函数调用的类型和支持的参数的数据类型随每个SOAP实现方案的不同而不同,因此适用于一个工具包的函数可能并不适用于另一个工具包。
这并不是SOAP的限制,而是所使用的特定实现方案的限制。
到目前为止,SOAP最引人注目的特征是它可以在许多不同的软件和硬件平台上实现。
这意味着SOAP可用于链接企业内部和外部的不同系统。
过去曾试过多种方法以提出一个可用于系统集成的通用通信协议,但它们都没有像SOAP一样获得广泛的认可。
为什么呢?
因为与许多早期的协议相比,SOAP更小巧,而且更易于实现。
例如,DCE和CORBA的实现需要数年时间,所以只发布了很少几个实现方案。
而SOAP可以利用现有的XML分析器和HTTP库完成大部分艰苦的工作,因此SOAP实现方案在数月内便可完成。
这就是为什么现在已经有70多个SOAP实现方案的原因。
当然,SOAP并不具备DCE或CORBA的全部功能,虽然功能减少了,但由于其复杂程度大大降低了,因此SOAP更易于应用。
2.2.2Web服务描述语言--WSDL
WSDL(WebServicesDescriptionLanguage)表示Web服务说明语言。
我们可以认为WSDL文件是一个XML文档,用于说明一组SOAP消息以及如何交换这些消息。
换句话说,WSDL对于SOAP的作用就像IDL对于CORBA或COM的作用。
由于WSDL是XML文档,因此很容易进行阅读和编辑;
但大多数情况下,它由软件生成和使用。
WSDL文件用于说明消息格式的表示法以XML架构标准为基础,这意味着它与编程语言无关,而且以标准为基础,因此适用于说明可从不同平台、以不同编程语言访问的XMLWebService接口。
除说明消息内容外,WSDL还定义了服务的位置,以及使用什么通信协议与服务进行通信。
也就是说,WSDL文件定义了编写使用XMLWebService的程序所需的全部内容。
有几种工具可以读取WSDL文件,并生成与XMLWebService通信所需的代码。
其中一些最强大的工具可在MicrosoftVisualStudio.NET中找到。
当前,许多SOAP工具包都包括从现有程序接口生成WSDL文件的工具,但却几乎没有直接用于编写WSDL的工具,而且WSDL的工具支持也很不完整。
但不久就会出现编写WSDL文件的工具,接着还会有生成代理和存根的工具(与COMIDL工具很相似),这些工具将成为多数SOAP实现方案的一部分。
到那时,WSDL将成为创建XMLWebService的SOAP接口的首选方法。
2.2.3通用发现、说明和集成――UDDI
UDDI(UniversalDescriptionDiscoveryandIntegration)是Web服务的黄页。
与传统黄页一样,您可以搜索提供所需服务的公司,阅读以了解所提供的服务,然后与某人联系以获得更多信息。
当然,你也可以提供Web服务而不在UDDI中注册,就像在地下室开展业务,依靠的是口头吆喝;
但是如果您希望拓展市场,则需要UDDI以便能被客户发现。
UDDI目录条目是介绍所提供的业务和服务的XML文件。
UDDI目录条目包括三个部分。
“白页”介绍提供服务的公司:
名称、地址、联系方式等等;
“黄页”包括基于标准分类法(例如NorthAmericanIndustryClassificationSystem和StandardIndustrialClassification)的行业类别;
“绿页”详细介绍了访问服务的接口,以便用户能够编写应用程序以使用Web服务。
服务的定义是通过一个称为类型模型(或tModel)的UDDI文档来完成的。
多数情况下,tModel包含一个WSDL文件,用于说明访问XMLWebService的SOAP接口,但是tModel非常灵活,可以说明几乎所有类型的服务。
UDDI目录还包含若干种方法,可用于搜索构建您的应用程序所需的服务。
例如,您可以搜索特定地理位置的服务提供商或者搜索特定的业务类型。
之后,UDDI目录将提供信息、联系方式、链接和技术数据,以便您确定能满足需要的服务。
到现在为止,我们已经知道了如何与XMLWebService通信(SOAP),XMLWebService是怎样进行说明的(WSDL),以及如何查找XMLWebService(UDDI)。
这些内容构成了一套基本规范,为应用程序的集成和聚合提供了基础。
根据这些基本规范,我们可以构建实际的解决方案,并从中获益。
但在这里却有了一个问题:
我们要怎样用这个XMLWebService呢?
有一个很简单的方法,就是创建代理对象。
.NETXMLWeb服务代理(通常简称为代理)是连接.NETFramework和XMLWeb服务的一座桥梁,它使得编程人员可以方便快速的使用服务。
在VisualStudio.NET里,可以自动创建代理对象,因此编程人员无需详细了解底层技术。
这就大大减少了出错的概率,这也是为何我们选用VisualStudio.NET2003作为开发工具的原因之一。
在以下的章节中,我们将介绍如何用ASP.NET创建XMLWebService,及如何使用代理对象来使用所创建的XMLWebService提供的服务。
第三章网站功能分析及设计
3.1需求分析
网上书店系统主要是处理网上购书和库存的系统。
一个典型的网上书店系统应该提供具有图书分类检索和搜索、购物车管理、在线订单、商品推荐、顾客评论等功能和强大的后台管理功能。
根据网上书店基本需求,本系统需要完成的任务如下:
●书籍信息管理:
管理员对书类和书本的添加、删除、修改、查询的操作,查看书籍的库存,如果书籍低于安全库存能及时进货。
●订单信息管理:
管理员可以查询新订单、历史订单及删除历史订单,通过订单上的信息可以进行送货及了解书本销售情况。
●在线购物管理:
用户可以浏览不同类别的所有书本信息,也可以对书本进行查找,网上书店可以实现类别、书名、作者、出版社等综合搜索功能,也可以查看用户对书籍的评语,只当注册用户登