完整版基于46NET框架的WEB服务的研究与实现毕业设计.docx
- 文档编号:25522484
- 上传时间:2023-06-09
- 格式:DOCX
- 页数:59
- 大小:813.28KB
完整版基于46NET框架的WEB服务的研究与实现毕业设计.docx
《完整版基于46NET框架的WEB服务的研究与实现毕业设计.docx》由会员分享,可在线阅读,更多相关《完整版基于46NET框架的WEB服务的研究与实现毕业设计.docx(59页珍藏版)》请在冰豆网上搜索。
完整版基于46NET框架的WEB服务的研究与实现毕业设计
摘要
目前Web服务(WebServices)作为一种新兴的中间件技术,已经被广泛应用于各种电子商务中。
Web服务可以将多个系统整合到一起,以及将功能函数作为组件提供给远程调用。
它最终将淘汰EAI,在应用程序之间提供简单的,基于消息的数据交换过程,能够对远程数据进行实时请求。
基于XML技术的Web服务很好地解决了跨平台的分布式应用问题,成为了互联网上分布式计算的最佳技术。
而.NET框架则为Web服务的开发提供了很好的支持。
本文以Internet为背景,采用BS模式完成了一个网上书店系统的开发,并在一些功能模块中调用了Web服务。
本文首先分析了.NET框架的组成、体系结构、特点以及ASP.NET的技术架构,接着介绍了Web服务的特点、体系结构以及它的标准和技术。
最后,详细介绍了基于.NET框架,利用开发工具VisualStudio.NET实现一个电子商务系统的开发过程。
并对Web服务移植后的重新引用的问题以及在Web服务性能上进行了研究和探讨。
本文对使用.NET框架来开发电子商务系统,提高Web服务性能、扩展Web服务的应用领域有着重要的实际意义。
关键词:
.NET框架Web服务Web服务性能网上书店
Research&ImplementationonWebServicesBasedonthe.NETFramwork
Abstract
Beinganemergingmiddleware(MOM),WebServiceswidelyappliedinallkindsofe-commerce.WebServicesareusedtointegratedifferentsystemstogetherandprovidefunctionsasgroupwarefortheRemoteProcedureCall(RPC).InsteadofEDI,simple,message-orienteddataexchangingprocessesbetweenapplicationswillbeprovidedbyWebServicesthatrequesttheremotedataatrealtime.WebServicesBasedonXMLdowellinsolvingthedistributedapplicationproblemsuponplatforms,thenbecomethebestofDDBintheInternet.the.NETframeworkjustsupportsthedevelopmentofWebServicesprimely.
ThisthesisbasesonthecurrentInternet,andfinishesawebbookshopandusesWebServicesinsomefunctionalmoduleswithBSmode.Firstly,thisthesisanalyzesthecomposing,architecture,characteristicof.NETframeworkandASP.NET.Secondly,itintroducesthecharacteristic,architectureofWebServicesandtheirstandardsandthetechnology.Last,itspeciallyintroducesthedevelopingprocessofae-csystembasedon.NETframeworkwithVisualStudio.NET.Atlast,thisthesisdiscussestheproblemsthattheyexplantanotherserversand),致力推广Web服务的全面应用。
1.2Web服务的现状及应用领域
1.2.1Web服务的现状
Web服务是一种新的Web应用程序分支,它们是自包含、自描述、模块化的应用,可以发布、定位、通过Web调用。
Web服务可以实现从简单的请求到复杂商务处理的任何功能。
一旦部署,其他Web应用程序可以发现并调用它部署的服务。
它就是在现有的各种异构平台的基础上构筑一个通用的与平台无关、语言无关的技术层,各种不同平台上的应用依靠这个技术层来实施彼此的连接和集成。
国际上,40%左右的开发人员从事Web服务的开发,该技术具有很好的市场潜力。
大量面向消费者的B2CWeb服务将被使用。
日前,微软、英特尔、Lexmark和理光公司为用户更方便地通过网络连接打印机、数码相机和数字音乐播放器等设备设计了一项新的Web服务技术。
Web标准化组织WorldWideWebConsortium(W3C)于2005年1月25日发布三个Web服务相关的标准,并希望能得到广泛应用。
Web服务必将是分布式应用程序的主导架构,市场需求平均以94%复合增长,在未来10年,Web服务项目的总投入将达到1840亿美元。
目前来看,中国的Web服务市场仍处于初级阶段,国内大部分企业并未将Web服务纳入IT部门的技术架构或采购列表中去。
但是Web服务在2003年开始受到关注,到2004年信息技术行业的焦点直接面向Web服务,更在2005年进一步得到发展。
根据当前商务和技术的发展情况,SOAP和Web服务是必然趋势。
Web服务可以将多个系统整合到一起,以及将功能函数作为组件提供给远程调用。
这样很大程度上简化了企业的业务过程,降低企业内集成的成本。
它最终将淘汰EAI,在应用程序之间提供简单的,基于消息的数据交换过程,能够对远程数据进行实时请求。
Web服务可解决实际的B2B问题,实现电子商务业务,使得实时交互和协作成为可能。
1.2.2Web服务的应用领域
Web服务的概念推出之后,得到了业界的广泛关注,IBM、HP、Microsoft、Sun、BEA等大公司纷纷推出了自己的Web服务开发工具。
IBM的Webphere,Microsoft的.NET,Sun公司推出的SunOne,BEA公司的WebLogic等产品都把实现Web服务列为自己的目标。
目前Web服务的应用主要集中在以下几个方面。
(1)基于商业的Web服务。
该类服务针对的是企业应用服务,包括企业内部的ERP系统,企业间的SCMCRM等系统。
当这些系统以Web服务的形式在互联网中出现时,企业内的应用集成将更容易,在企业间众多合作伙伴系统间的对接也将变得轻松。
(2)基于消费者的Web服务。
此类服务针对的是原来的B2C网站的改造,为这些基于浏览器的Web应用增加了Web服务的界面,使得用户使用Internet更为方便,能够获得更加便捷的服务。
(3)基于传统的Web服务。
一些传统意义上的系统服务,比如用户权限认证,系统见空等,如果迁移到全球范围的Internet上或者企业内部Intranet上,其作用范围将单个系统或是局部网络拓展到整个企业网络或整个Internet。
这样,在同一系统服务中的不同应用将可以在整个Internet环境中部署。
(4)实现网格计算的Web服务。
目前网格计算是把互联网中的计算机集中起来,共同协作完成大规模的计算任务。
Web服务及其发展是构建网格计算环境的一个途径,使用Web服务,异构的计算机软件和硬件系统可以通过Internet联结起来,共同完成一些计算。
1.3Web服务在电子商务中的作用
Web服务在电子商务发展中,不仅是推动其动态电子商务的主力军,更是在此领域具有美好前景。
1.3.1Web服务是推动动态电子商务的关键
在电子商务的发展初期,企业应主要在现有的关系、业务流程和商业应用基础上发展互联网,供客户访问。
随着实践的深入,企业希望将其业务流程与Web实现集成,企业开展电子商务的最终目的就是希望借助它转变做生意的方式,获得更大的投资回报。
随着应用的不断深入,企业面对的内外部系统环境逐渐复杂。
企业开始意识到建立真正开放、安全、可扩展的业务平台的迫切性。
只有这样,企业才能够轻松地建立起与客户、供应商、合作伙伴之间的动态业务沟通机制,在市场竞争中真正赢得主动。
实现这些目标的最佳途径就是建立动态电子商务平台,而动态电子商务实现的关键是Web服务[1,2,3]。
动态电子商务是企业业务流程重组的产物,充分利用了Web服务的动态特性,并且在实时条件下的应用可以被动态地集成,对企业来说,这比简单地访问Internet上现有的第一代电子商务更有价值。
在新的动态电子商务模式下,购物应用程序代表消费者执行多种应用功能。
它不仅可以自动地与销售商取得联系,而且还能主动发出通知:
“要买书,价位怎样,质量如何?
”。
显然,这一应用可以代替消费者去搜索或查询所有的候选公司以获得最佳结果,而不必过分依靠某一产品提供商。
在这种环境下,一切都是动态的!
由于开放标准的缘故,不需要和应用提供商进行专门商榷,这对交易双方都有利,成本也自然会降下来。
事实上,现在的Web服务已经能为利用WSDL编程、利用SOAP访问、利用UDDI搜索的Web应用提供标准的Internet界面,这种界面完全是人性化的,它采用协议实现访问,通过URLDNA服务器完成搜索。
由于基于互联网标准的UDDI和Web服务并不需要专门的通信协议,因此企业只要使用互联网及基于互联网标准的应用工具就能够轻松地开展Web服务。
而随着SOAP、WSDL、UDDI等标准的发展,标准化的信息传递、数据格式化、简化业务运作过程的服务界面等动态电子商务基础设施将进一步扩展。
1.3.2Web服务在电子商务中的应用前景
用Web服务集成应用程序,可以使公司内部的商务处理更加自动化。
Web服务是B2B集成成功的关键。
通过Web服务,公司可以把关键的商务应用“暴露”给指定的供应商和客户。
例如,把电子下单系统和电子发票系统“暴露”出来,客户就可以以电子的方式发送订单,供应商则可以以电子的方式发送原料采购发票。
相比之下,Web服务的实现要比EDI简单得多,而且Web服务运行在Internet上,在世界任何地方都可轻易实现,其运行成本就相对较低。
不过,Web服务并不像EDI那样,是文档交换或B2B集成的完整解决方案。
Web服务只是B2B集成的一个关键部分,还需要许多其它的部分才能实现集成。
用Web服务来实现B2B集成的最大好处在于可以轻易实现互操作性。
只要把商务逻辑暴露出来,成为Web服务,就可以让任何指定的合作伙伴调用这些商务逻辑,而不管他们的系统在什么平台上运行,使用什么开发语言。
这样就大大减少了花在B2B集成上的时间和成本,让许多原本无法承受EDI的中小企业也能实现B2B集成。
Web服务将向智能化方向发展,智能化Web服务强调了Web服务的用户信息,并能够与其它服务共享用户信息。
它能够根据“谁”、“什么”、“何时”、“何地”和“为什么”等因素,生成动态的符合用户需求的结果。
为了能够让Web服务具备智能化,它必须能够识别出接受服务的消费者的身份、与消费者相关的安全方针、与消费者相关的服务策略以及消费者此次服务进行时所用的接入设备,同时智能化Web服务还应该知道与消费者享受此次服务有关的以往历史记录。
有关专家推测智能Web服务(IWS)将是下一代Internet革命的方向,包括个性化的信息定制服务(如股票信息查询、货币网上兑换处理等)、电子商务(货物定单、物流配送)等。
智能Web服务是未来IT产业的发展方向,是信息化社会的必由之路。
1.4本次毕业设计的主要任务
本次毕业设计的课题是基于.NET框架的Web服务的研究与实现。
本人在对.NET框架、体系结构和Web服务的标准、技术有所了解后,掌握了C#的编程思想,深入研究XML、SOAP、UDDI、WSDL标准在Web服务中的作用以及Web服务在电子商务中的应用Web服务。
采用.NET的一些相关技术来实现网上书店的开发,实现了用户注册登录、浏览书籍、评论书籍、查找书籍、查看书籍、购买书籍、用户账号管理、书籍管理和订单处理的功能。
并在查询功能模块中调用了Web服务。
第二章.NET框架概述
2.1.NET框架的定义
Microsoft的.NET可以简单地总结为一个提供基于XML和Web服务组件系统的基本结构。
它把Microsoft的组件对象模型(COM)和松散耦合计算有机结合在一起。
.NET框架包含3个主要部分:
公共语言运行时(CommonLanguageRuntime,简称CLR)、具有多层次结构的统一的类库集合、活动服务器页面(即是ASP.NET)。
公共语言运行时可以说是.NET的最大优点,在组件的开发过程中及程序的运行过程中,都扮演着非常重要的角色。
CLR负责管理内存分配、启动或取消线程和进程、实施安全性策略,同时满足当前组件对其他组件的需求。
CLR的关键作用是提供了一个跨编程语言的统一的编程环境。
由于.NET框架提供了一个统一的类库集(API),所以它可以实现跨语言继承性和错误处理功能,使得所有的编程语言都是相互等同的,方便开发者自由选择理想的编程语言。
ASP.NET提供了一个由一组控件和一个基本结构组成的Web应用程序模型。
当控件运行在Web服务器上时,用户界面将被转换成HTML格式发送给浏览器,同时ASP.NET基本结构能够通过SOAP传送服务。
.NET框架还提供了一个ADO.NET的组件,简化数据库访问程序的开发。
2.2.NET框架的组成
2.2.1.NET框架的基本组成
①公共语言运行时。
实际上,公共语言运行时在组件的开发及运行过程中,都扮演着非常重要的角色。
在组件运行过程中,运行时负责管理内存分配、启动或删除线程和进程、实施安全性策略、同时满足当前组件对其它组件的需求。
在开发阶段,运行时的作用有些变化:
与现今的COM相比,运行时的自动化程度大为提高(比如可自动执行内存管理)。
尤其是,映射功能将锐减开发人员将业务逻辑程序转化成可复用组件的代码编写量。
对编程语言而言,都有自己的运行时。
VisualBasic开发系统具有最为明显的运行时(名为VBRUN),VisualC++跟VisualFoxPro、Jscript、SmallTalk、Perl、Python和Java一样有一个运行时,即MSVCRT。
.NET框架的关键作用在于,它提供了一个跨编程语言的统一编程环境。
②统一的类库集合。
.NET框架为开发人员提供了一个统一、面向对象、层次化、可扩展的类库集(API)。
现今,C++开发人员使用的是Microsoft基类库,Java开发人员使用的是Windows基类库,而VisualBasic用户使用的又是VisualBasicAPI集。
.NET框架则统一了微软当前的各种不同类框架,并且通过创建跨编程语言的公共API集,.NET框架可实现跨语言继承性、错误处理功能和调试功能。
实际上,从JScript到C++的所有编程语言,都是相互等同的,编程语言并不是关键。
③活动服务器页面(ASP.NET)。
ASP.NET是使用.NET框架提供的编程类库构建而成的,它提供了Web应用程序模型,该模型由一组控件和一个基本结构组成。
有了它,Web应用程序的构建变得非常容易。
开发人员可以直接使用ASP.NET控件集,该控件集封装了公共的、用于超文本标识语言(HTML)用户界面的各种小器件(诸如文本框、下拉菜单等等)。
实际上,这些控件运行在Web服务器上,它们将用户界面转换成HTML格式后再发送给浏览器。
在服务器上,控件负责将面向对象的编程模型提供给Web开发人员,这种编程模型能提供面向对象编程技术的丰富功能。
ASP.NET还提供一些基本结构服务(诸如会话状态管理和进程重启服务),这些服务大大减少了开发人员要编写的代码量,并使应用程序的可靠性得到大幅度提高。
ASP.NET还允许开发人员将软件作为一项服务来提供。
通过使用ASP+Web服务功能,ASP.NET开发人员只需进行简单的业务逻辑编程,而由ASP.NET基本结构负责通过简单对象访问协议(SOAP)来提供服务。
2.2.2.NET框架的体系结构
.NET是分层的、模块化的,以及层次结构化的。
.NET框架的每一层都是一个抽象层。
其中,.NET语言是顶层,也是最为抽象的一层。
而公共语言运行库则位于底层,它是最不抽象、最靠近本地环境的一层。
这一点很重要,因为公共语言运行库需要与操作环境紧密合作来管理.NET应用程序。
.NET框架被分成了多个模块,每个模块都有它们各自特定的责任。
最后由于高层只从底层请求服务,所以.NET又是层次结构化的。
体系结构如图2-1所示。
VB.NET
C#
Jscrip.NET
其他.NET语言
公共语言规范(CLS)
通用型别系统(CTS)
.NETFramework类型(FCL)
WebForm、Webservice
Windowsform
Console
ADO.NET
.NETremoting
公共语言运行库
公共语言基本结构(CLI)
操作系统
图2-1.NET的体系结构
2.2.3.NET的主要技术
.NET之中最重要的新技术首推Web服务。
如其名称所示,Web服务提供了某些功能,可以通过网络加以调用。
大多数技术都可以在某种程度上直接支持Web服务。
然而.NET绝非仅仅是Web服务而已,微软关于.NET技术包括:
①.NETFramework:
包括公共语言运行时(CommonLanguageRuntime,简称CLR)和.NET框架类库。
CLR是建造一系列新应用程序的标准基础,.NET类库则为许多基于CLR的应用程序提供一个新的标准开发环境。
这个类库,包含的技术有:
ASP.NET,最新一代的ASP(ActiveServerPages)技术;ADO.NET,最新一代的ADO(ActiveXDataObjects)技术;以及对“构建和使用Web服务”的支持等等。
微软还发行了一个.NETFramework精简版,名为.NETCompactFramework,用于小型设备如个人数字助理(personaldigitalassistants,PDAs)上。
②VisualStudio.NET:
支持多种可使用.NETFramework的编程语言,包括VisualBasic;一个增强版的C++;一个基于.NET的Java替代语言J#,以及一个为.NETFramework量身打造的全新语言C#。
③.NETMyServices:
一组服务,允许用户存储和访问位于互联网可达之服务器上的个人信息,例如日程表和地址簿等等。
这些服务还提供诸如认证(Autherntication)这样的通用功能,使客户能够证明自己的身份;也提供了一个“向不同设备上的客户发送消息”的方式。
④.NETEnterpriseservers:
这是一系列软件服务器,包括、ExchangeServer2003、SharePointServer2003、ProjectServer2003、BizTalkServer2Web,ApplicationCenter2Web、CommerceServer2Web、HostIntegrationServer2Web、SQLServer2Web等等。
在未来的版本当中,他们将全部基于.NET技术构建。
2.3.NET框架的特点
.NET是全新的一种技术,因此,.NET中也包括了很多新特性。
①一致的编程模式。
在.NET环境中,所有的应用程序都采用通用的面向对象编程模式,不再像Windows环境中那样,既有DLL函数也有COM对象。
②高效率开发。
通过.NETFramework为我们提供的一个庞大而有结构清晰的类型,使得编程变得异常轻松,还有自动垃圾回收机制等等一系列新的特性,可以让程序员腾出更多的精力放在考虑如何实现客户所需要的业务逻辑上,而不是计算机的控制上为内存如何分派之类的事情头痛。
甚至无论你是开发哪一种应用程序,无论是CS、BS、还是智能设备亦或是数据库编程,都可以使用你最熟悉的一种编程语言而不需要去学习诸如C++、ASP、SQL等等各不相同的多用语言。
.NET还带来了多种语言之间的无缝集成,例如一个系统同时可以采用多用编程语言来开发,VB.net编写的类可以方便的再用C#继承。
这些都大幅了提高开发效率。
③运行于多个平台。
对于任何操作平台,只要支持.NET运行时均可以运行.NET应用程序。
现在所有的Windows平台均可以实现这一点。
在将来甚至可以运行在非Windows操作系统上。
④支持多语言的综合。
按照COM的原理,代码重用是建立在二进制代码的级别上。
在.NET环境下,代码重用可以建立在源码的级别上的,也就是说,别人用C#语言写的某个类可以直接在C++这样的语言中使用。
之所以.NET有这样的巨大威力在于.NET为所有的支持.NET编程方式的语言提供了一整套通用的类型系统。
⑤自动资源管理。
在.NET环境下,自动资源管理功能已经加入到CLR之中。
同时,由于资源回收功能的加入,在一定程度上安全性得到了保障,诸如内存溢出攻击等得到了有效控制。
⑥一致的出错处理方式。
在.NET环境下所有的程序都采用统一的错误处理方式---产生异常。
⑦安全性。
.NET从装载一个类开始,就进行确认检查;在访问代码和相应资源时,又实施代码访问安全措施。
.NET提供了一整套机制来判断角色和确认身份信息,并且能作到跨进程和机器从而确保所需的代码在远端没有受到破坏。
.NET的安全性也深深地嵌入到CLR结构中,以确保应用程序本身的安全。
这些安全机制是对现有操作系统安全机制的一种质上的扩展,从而加强了.NET的安全性。
⑧XML和SOAP的引入。
过去分布式应用程序的设计出现了诸如CORBA、IIOP、RMI和DCOM等协议。
这些分布式系统的弊端就是灵活性差,因为这种设计方式使得应用程序固定在服务器端。
而Internet是个松散连接、非常分布的世界。
随着技术不断进步和发展,出现了全新的编程模式,而XML和SOAP能使这种模式很好地工作。
在.NET中XML和SOAP已经深深地溶入其中,并成为非常重要的组成部分。
⑨全新的编程语言C#。
C#象VB一样简单,又象C++一样强大。
C#的推出是微软在研究了C、C++、JAVA、Modula2、SmallTalk等大量语言的基础上推出的语言,比较起JAVA来,C#的最大不同之处在于它更接近C++,同时C#也吸收了大量新的概念,例如C#是面向组件的语言,C#能作到与XML协议的最大程度的融合。
同时,C#在编译方式上与JAVA又很不一样。
C#的推出与.NET是密切相关的。
2.4.NET与J2EE的比较
J2EE平台提供了一个基于组件的方法,来设计、开发、装配及部署企业应用程序[4,5]。
J2EE平台提供了多层的分布式应用模型、组件重用、一致化的安全模型以及灵活的事务控制。
同时保证平台独立的、基于组件的J2EE解决方案不会被束缚在任何一个厂商的产品和API上。
.NET和J2EE是非常相似的。
但是这两种技术在实现方法和具体的实现技术上都有很大甚至对立的区别点。
①在开发语言上,.NET的支持面是比较广的,C++、VB、C#、Perl、COBOL等等均得到支持,开发人员可以很容易找到适合自己的语言。
而J2EE只支持JAVA语言。
这就是说J2EE在语言的选择面上是比较窄的。
当然,C#是.NET支持的最重要的一种语言,相
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 完整版 基于 46 NET 框架 WEB 服务 研究 实现 毕业设计