毕业设计论文基于WEB的在线房屋交易平台设计与实现

上传人:仙*** 文档编号:144268489 上传时间:2022-08-27 格式:DOC 页数:59 大小:2.31MB
收藏 版权申诉 举报 下载
毕业设计论文基于WEB的在线房屋交易平台设计与实现_第1页
第1页 / 共59页
毕业设计论文基于WEB的在线房屋交易平台设计与实现_第2页
第2页 / 共59页
毕业设计论文基于WEB的在线房屋交易平台设计与实现_第3页
第3页 / 共59页
资源描述:

《毕业设计论文基于WEB的在线房屋交易平台设计与实现》由会员分享,可在线阅读,更多相关《毕业设计论文基于WEB的在线房屋交易平台设计与实现(59页珍藏版)》请在装配图网上搜索。

1、学院届毕业设计(论文)论文名称 院 (系): 学生姓名: 指导教师: 专 业: 班 级: 完成时间: 年 月摘 要Web服务是一种优秀的分布式的组件技术,以XML/SOAP/WSDL/UDDI为主干,为互联网应用提供了一种创建松散耦合、语言中立、平台无关性的应用程序的有效手段。各大软件厂商都相继推出Web服务的开发平台或框架,互联网上Web服务的各种应用更是层出不穷。Web服务使用XML作为数据标记格式,使用XML Schema来描述XML文档的格式,使用SOAP描述Web服务的通信规则和格式,使用WSDL描述Web服务和客户机之间消息处理机制和Web服务的接口,使用UDDI来发现互联网上更多

2、的Web服务。在线房屋交易已经具有一定的市场规模,在线房屋交易具有长时间在线、动态交互、多种形式展示、受众面广、信息更新及时等优越性,有力地冲击了传统店面交易。将Web服务应用于在线房屋交易中,可以提高房屋信息的准确性、可重用性,同时可以简化交易平台的开发流程,增加在线房屋交易平台的灵活性和专业性。为了实现一个在线房屋交易平台,首先分析房屋及物业信息的通用格式,构造出用来描述房屋和物业信息的 XML的XML Schema。然后利用Web服务提供一系列服务接口,包括查询、提交、修改、删除等操作,使得包含有房屋及物业信息的XML可以通过SOAP在互联网上供各种应用程序使用。通过对在线房屋交易平台进

3、行需求分析,对在线房屋交易平台进行Web建模,应用Web服务提供的服务接口,利用IIS作为Web服务器,使用ASP.NET技术和HTML/CSS/JavaScript语言,实现一个在线房屋交易平台。关键字: Web服务,可扩展标记语言,Web服务描述语言,统一描述发现与集成,在线房屋交易平台AbstractWeb Services, whose main technology includes XML/SOAP/WSDL/UDDI, is considered as a kind of distributed component technology. It provides effectiv

4、e means for implementing Internet applications which are loosely coupled, language neutral, and platform independent. Major software companies supply various kinks of platforms and frameworks to develop Web Services, and also there are a lot of applications about Web Services on the Internet.The dat

5、a format of Web Services is XML. The description of XML document format is XML Schema. SOAP describes the rules and format of communication. WSDL describes the interfaces and the methods of processing messages between Web Services and the client, and computers can discovery more Web Services on the

6、Internet by using UDDI.The market scale of housing online trading has developed to some extent. Housing online trading has occupied the advantages such as long time online, dynamic interaction, diversiform exhibition, broad impact and timely information update, which has a powerful impact on traditi

7、onal store trading. Web Services will be used in online housing trading and it can improve the accuracy and reusability of the information, simplify the development process of the trading platform, and increase the flexibility and professionalism of Housing Online Trading Platform. In order to imple

8、ment Housing Online Trading Platform, first, analyze common format of housing and estate information, construct XML Schema which describes XML of housing and the property information. With a series of interfaces provided by Web Services which includes enquiry, submission, modification, deletion and

9、other operations, XML of housing and the property information can be used by any application on the Internet through SOAP. With the requirement analysis and web modeling of Housing Online Trading Platform, making use of IIS as Web server, ASP.NET as development technology, and HTML/CSS/JavaScript as

10、 development language, Housing Online Trading Platform is implemented.Key words: Web Services,XML,WSDL,UDDI,House Online Trading Platform1 绪论1.1.1 课题背景和意义近年来,全国各地如雨后春笋般地出现了很多二手房中介商,他们主要为买卖租赁二手房的人们服务,通过提取一定酬金来进行盈利。由于房产交易属于大宗买卖,所以这些中介商获利颇丰,从而吸引越来越多的人进入这个行业。房产中介从一开始就采取了店铺式的门面形式,采用纸和笔的数据保存方法。这种方法的弊端显而易见

11、:首先是信息的非标准性,不同的业务员记录的格式都不一样,容易产生错误和纰漏,引起损失和纠纷;然后就是信息的易失性,对于纸质的纪录,非常容易发生不可还原的损坏,造成企业的损失;再者就是信息的不可复制性,对于大量的业务数据,如果制作备份或副本将会是一件浩大而繁琐的工程,处理不当就会影响企业的稳步发展。借助计算机和Internet,房产中介公司找到了暂时解决的办法。他们利用运行在桌面的计算机来作为公司日常业务所产生文档的保存地方和处理中心;利用建立自己公司的网站来进行宣传和业务处理。但是,简单的一个桌面管理系统或是一个信息发布网站已经无法满足房产交易的需求,因为房产交易市场的日益透明化、规范化,整个

12、行业进入了激烈的竞争。随着房产中介的业务越来越大,信息越来越多,各种复杂的应用程序和历史遗留数据给房产中介带来了很高的维护费用和更新代价。如图 4.1所示。公司数据保存在桌面应用程序公司数据保存在纸质文件公司数据保存在Web页面公司数据保存为其他的形式中介公司数据图 4.1中介公司数据访问示意图比起实时变化的房产信息,一些物业小区的信息相对固定且具有持久性,对于同一区域的不同房产中介公司来说,重复录入物业小区的资料浪费了很多人力、物力和财力,而且不同的房产交易平台在信息的准确性和实时性上也参差不齐,有时甚至会误导客户。房产中介公司和购房者对统一规范的物业信息的需求愈来愈大,通过Web服务解决这

13、个问题也就自然而然成了本文的研究目标。Web服务就是通过Web提供的服务。按照W3C的定义,Web服务是一种通过统一资源指示符(URI)标识的软件应用,其接口及绑定形式可通过XML标准定义、描述和检索,Web服务能够通过XML消息及Internet协议(如HTTP)完成与其他软件应用的直接交互。Web服务的主要目标就是在现有的各种异构平台的基础上构筑一个通用的与平台无关、与语言无关的技术层,各种不同平台之上的应用依靠这个技术层实施彼此的连接和集成。简单来说,Web服务就是一个向外界暴露出的能够通过Internet进行调用的API或者应用程序。对于外部的Web服务使用者而言,Web服务实际上是一

14、种部署在Web上的对象或者组件,它具有以下特征:良好的封装性、松散耦合、使用标准协议规范、高度可集成能力1。Web服务这些特征决定了它是适合解决目前获取统一规范的物业信息的最佳途径。不论房产中介自身的应用平台是桌面应用程序还是网站,都可以使用标准的方法从Web服务获取最新最准确的物业信息,并应用到自己的系统中。1.2 国内外研究状况自从2000年6月,Web服务被Ariba、IBM和Microsoft 正式提出以来,它一直是学术界、工业界讨论的焦点和研究的重点。特别是随着面向服务的体系结构(SOA)技术和Grid技术的发展和应用的普及,作为其基础的Web服务也得到普遍重视。其重要标志是目前国际

15、上已经形成了每年召开的IEEE International Conference on Web Services(ICWS)和IEEE International Conference on Services Computing(SCC)两个主要国际会议,以及各种有关的Web与Grid应用、分布式计算等会议上,都有涉及Web服务的专题。同时,国际上也已经发行了International Journal of Web services Research(IJWSR)、International Journal on Web Services Practices (IJWSP)、SOA WEB S

16、ERVICES JOURNAL等针对Web服务的期刊。国外许多大的国际组织和企业、公司,如IBM、Microsoft、VeriSign、W3C、RSA、EBA、IETF、OASIS、SUN、HP等,都在致力于研究和开发有关Web服务的各种标准、协议和应用产品,这些都极大地推动了Web服务技术的应用和发展2。Web服务作为一种分布式计算模型,是Web上数据和信息集成的有效机制。在电子商务应用领域,复杂的应用连接和历史遗留的程序代码造成了电子商务应用过高的维护代价和更新代价,而Web服务正好能够解决这一问题,成为目前应用环境中最为合理的解决方案。随着Web应用从集中式向分布式的迅速发展,以提高电子

17、商务系统的健壮性、高性能计算能力为出发点,为了解决现实Web用中“应用到应用”及“点对点”的核心问题,使当前Web应用适应全球化和复杂商务处理的需求,研究并应用Web服务技术具有重要的意义。Web务的基本构架包括Web服务提供者、服务请求者和服务代理以及它们之间的通信、XML格式的消息传递机制等。正是基于该架构,对Web服务核心支撑技术的研究和应用才得以迅速开展3,4。同时,学术界对Web服务有不同侧面的研究工作和相应的技术成果。例如,语义Web在Web服务中的应用5-7;针对Web服务应用中的安全及隐私问题2,8;Web服务的服务质量9,10;Web服务的组合11,12。以及以上几种方面的交

18、叉研究,如基于本体的安全隐私研究13,14;Web服务组合的服务质量研究15;基于语义Web服务自动组合的研究16等。在应用领域,有P2P环境中的Web服务应用17;网格环境中Web服务的研究18;Web基础结构的开发和部署19;分布式并行数据库中Web服务的应用20等。在实际开发领域,在商业21,22,23、医药24、环境25、政务26等领域都有Web服务应用的身影。此外,还有一些关于Web服务管理系统27和Web服务模型驱动开发28等方面的研究。随着软件厂商不断完善Web服务相关技术规范,并推出新的产品,越来越多的企业正受益于Web服务。同时,各大技术提供商陆续推出Web服务的构建工具,包

19、括Microsoft公司的Visual Studio.NET、IBM公司的Web Service Toolkit、SUN公司的SUN ONE等。基于Web服务的公共技术标准SOAP、WSDL、UDDI、WSFL等或是已经成为事实行业标准,或是正处于制定的过程中。各大技术提供商和传统商业企业都投入到标准的制定和应用中去,而作为Web服务体系架构的领导者的IBM公司和Microsoft公司也开始在全球推广Web服务技术,Web服务将成为将来动态商务Web的主流技术29。根据经济观察网的报道2008年地产中介行业分化将加剧:“2002年北京每成交4.59套商品住宅,才成交1套二手房;2003年每成交

20、4.21套商品住宅,成交1套二手房;2004年每成交3.40套商品住宅,成交1套二手房;2005年每成交3.06套商品住宅,成交1套二手房;2006年每成交2.39套商品住宅,成交1套二手房;2007二手房和商品房的成交数量距离更是缩小,2007年每成交1.6套商品住宅,就成交1套二手房。”如图 4.2所示。从图 4.2的数据我们可以看到,二手房越来越成为北京人购房的一个主要选择。这也从一个侧面反映了国内住房需求的变化。与之相呼应的是全国各地如雨后春笋般地出现了很多二手房中介商,他们主要为买卖租赁二手房的人们服务,通过提取一定酬金来进行盈利。由于房产交易属于大宗买卖,所以这些中介商获利颇丰,从

21、而吸引越来越多的人进入这个行业。图 4.2北京2002-2007商品房与二手房成交数量比值趋势图为了消除这些弊端,很多房产中介开始利用计算机管理信息,他们借助运行在个人电脑上的桌面应用程序来进行业务信息的保存和更新,并可以定期备份。这样,既克服了传统纸笔的弊端,也大大提高了业务的效率,帮助企业获取更大的利润。随着一些房产中介的发展,他们的业务从原来的一家店面发展到几家甚至几十家,此时孤立的信息管理系统便不能适应发展的要求。这时计算机再一次发挥了强大的作用,借助互联网,实现信息的随时同步,让多家店面仿佛在同一个办公室工作一样,任何信息一经发布就立刻到达每一个业务员的眼前,便捷高效且步调一致,大大

22、推动了房产中介的发展。目前利用网络进行信息交换的桌面应用程序有很多,其中不乏应用范围很广的房屋中介平台,如房友、房博士等。后来互联网蓬勃发展,各种形式内容的网站吸引了越来越多的目光,由于高度集中了公众的注意力,所以潜在的商机就被发掘出来,电子商务应运而生。互联网具有天然的优势,它具有长时间在线、动态交互、多种形式展示、受众面广泛等特点,逐渐成为众多房产中介公司青睐的宣传方法和交易手段。这种类型的房屋交易平台在互联网上很多见,比如各大媒体的房产频道、房产中介自己运行的房屋交易平台等。其中做的出色的有广州的满堂红网站,他们凭借网站这种形式,把自己的公司规模扩大到很多城市中,并取得不错的业绩。此外,

23、还有人研究基于手机短信的房屋交易平台30,这也是很好的思路,但是由于表现形式和资费的限制,业务有可能会受到wap网站的冲击。1.3 论文的主要内容和结构本文首先叙述了相关技术背景、课题的研究意义及课题的国内外研究现状;接着对Web服务技术进行了研究,分析了Web服务的体系结构,系统地研究了Web服务的关键技术:包括XML、SOAP、WSDL、UDDI以及Web服务的安全,并讨论了基于Web服务实现本系统的优势所在;然后介绍了论文的主要研究内容和全文的内容结构。在系统的分析与设计阶段,首先对房产交易平台进行总体目标和具体功能进行分析,根据功能和意义划分模块,提出了基于Web服务和数据、行为、表现

24、三层模型的系统架构;在系统的开发与实现阶段,根据实际需求,创建房产、用户等相关数据库以及提供物业信息的Web服务,按照Web服务安全性能要求,实现Web服务消费以及按照符合W3C所制订的各项标准建立在线房产交易平台。最后,对本文的研究内容和技术创新进行了总结,并提出了下一步工作的展望。论文的结构如下。第一章:绪论,主要叙述了课题背景和意义,以及国内外研究状况。第二章:Web服务及项目开发环境介绍,给出了Web服务体系架构、协议栈、规范、安全以及开发生命周期,对比了Web服务开发的工具和平台。为第三章的研究做好了理论和工具的准备。第三章:在线房屋交易平台的设计,通过研究目前的解决方案的缺陷以及采

25、用Web服务解决的优势,对在线房屋交易平台进行需求分析和Web建模以及平台的总体设计。第四章:在线房屋交易平台的实现,主要包括Web服务和在线房屋交易平台的实现、项目的测试、项目运行结果,并对其做出了总结。第五章:总结与展望,对全文的工作进行总结以及对未来工作的展望。最后为致谢和参考文献。2 Web服务及项目开发环境介绍Web服务技术是为解决在Internet环境下,松散耦合的Web服务之间相互调用、相互集成而设计的技术框架。以XML/SOAP/WSDL/UDDI为主干的Web服务技术赋予了Web服务一个与传统对象调用技术相似但又有本质区别的体系结构1,30。本章主要介绍Web服务的体系架构、

26、规范和安全,讨论了Web服务的主流开发工具和平台以及Web服务的开发生命周期。2.1 Web服务体系架构Web服务体系结构基于三种角色(服务提供者、服务注册中心和服务请求者)之间的交互。交互具体涉及到发布、查找和绑定操作。这些角色和操作仪器作用于Web服务构件:Web服务软件模块及其描述。在典型情况下,服务提供者提供可通过网络访问的软件模块(Web服务的一个实现)。服务提供者定义Web服务的服务描述,并把它发布到服务请求者和服务注册中心。服务请求者使用查找操作从本地或服务注册中心搜索的服务描述,然后使用服务描述与服务提供者进行绑定,并调用相应的Web服务实现或进行交互。服务提供者和服务请求者角

27、色是逻辑结构32。图 4.3展示了这些操作、提供这些操作的组件以及它们之间的交互。服务注册中心服务提供者服务使用者查找UDDI,WSDL发布UDDI,WSDL绑定SOAP WSDL图 4.3展示Web服务体系架构模型示意图2.1.1 Web服务角色Web服务体系结构中的角色包括如下。服务提供者(Service Provider):从企业的角度看,这是服务的所有者。从体系结构的角度看,这是托管访问服务的平台。服务请求者(Service Requestor):从企业的角度看,这是满足特定功能的企业。从体系结构的角度看,这是寻找并调用服务,或启动与服务交互的应用程序。服务请求者角色可以有浏览器来担当

28、,由人或无用户界面的程序(例如,另一个Web服务)来控制它。服务注册中心(Services Registry):这是可搜索的服务描述注册中心,服务提供者在此发布它们的服务描述。在静态绑定开发或动态绑定执行期间,服务请求者查找服务并获得服务的绑定信息(在服务描述中)。对于静态绑定的服务请求者,服务注册中心是体系结构中的可选角色,因为服务提供者可以把描述直接发送给服务请求者。同样,服务请求者可以从服务注册中心以外的其他来源得到服务描述,例如,本地文件、FTP站点、Web站点等。2.1.2 Web服务行为对于利用Web Services的应用程序,必须发生以下三个行为:发布服务描述、查询或查找服务描

29、述以及根据服务描述绑定或调用服务。这些行为可以单次或反复出现1。Web服务体系架构中包含的这些具体操作如下。发布(Publish):为了使服务可访问,需要发布服务描述以使服务请求者可以查找它。发布服务描述的位置可以根据应用程序的要求而变化。查找(Find):在查找操作中,服务请求者直接检索服务描述或在服务中册中心中查询所要求的服务类型。对于服务请求者,可能会在两个不同的生命周期阶段中牵涉到查找操作:在设计时,为了程序开发而检索服务的接口描述;而在运行时,为了调用而检索服务的绑定和位置描述。绑定(Bind):最后需要调用服务。在绑定操作中,服务请求者使用服务描述中的绑定细节来定位、联系和调用服务

30、,从而在运行时调用或启动与服务的交互。2.1.3 Web服务示例为了更加清楚地展示Web服务的体系架构,现在给出一个虚构的例子来说明。如图 4.4所示。Web Service ClientUDDIWeb ServiceQuery a Web serviceGet the Web service URLRequest the service descriptionGet the service descriptionRequest the Web serviceGet the service response图 4.4一个Web服务示例首先Web服务客户端(Web service client)

31、向UDDI中心发出一个定位Web服务的请求,UDDI中心返回一个链接到Web服务的URL。Web服务客户端向上一步返回的提供Web服务的服务器请求描述Web服务的WSDL,服务器返回WSDL。最终,Web服务客户端按照需求发出Web服务请求,并得到服务器返回的Web服务的响应。这就是一个典型的Web服务示例。2.1.4 Web服务协议栈Web服务协议栈的基础是网络传输层。Web服务要被服务请求者调用,就必须是可以通过网络可以访问的。HTTP,FTP,SMTP等Internet环境下的协议均可用于Web服务的传输协议。对于Intranet,Web服务还可以使用中间件作为传输交互的基础架构,如IB

32、M的CORBA。数据表现层的XML为整个Web服务上层协议提供了数据/信息描述手段,XML是目前全球范围内用于描述数据和交换数据的一种标准方式。对于Web服务而言,无论是Web服务的调用(SOAP)、Web服务界面的描述(WSDL),还是Web服务的发现(UDDI)都是使用XML作为信息描述和交换的标准手段。数据模型层是描述数据结构的数据模型(也称为元数据)。它同样也是一种数据,因此,描述数据结构的方式也是使用基础的数据表现方式:XML。XML Schema已经成为XML世界中的标准数据建模语言,SOAP,WSDL,UDDI的XML语法都是采用XML Schema进行定义和描述的。XML Sc

33、hema已经成为XML世界中的标准交流工具,这与UML在软件设计中的地位是相类似的。Web服务协议栈如表 4.1所示。表 4.1 Web服务协议栈示意表协议服务层次相关问题WSFLService FlowSecurityManagementQuality of ServicesUDDI-staticService DiscoveryUDDI-directService PublicationWSDLService Description:-Service Implementation-Service InterfaceSOAPXML-based MessagingXML SchemaData

34、ModelingXMLData PresentationHTTP,FTP,SMTPTransport基于XML的消息层使用的是基于XML的消息协议SOAP。消息层是构筑在更低的传输层之上的,这意味着SOAP可以单独使用,也可以与任何传输协议联合使用。服务描述层为调用Web服务提供了具体的方法。WSDL是一个基于XML格式的定义服务的实现和接口的基础标准。这意味着WSDL将服务的描述分为两部分:服务接口和服务实现。在服务发布层,服务提供者能够直接向服务客户端发送WSDL文档,也可以选择将WSDL文档发布到本地WSDL注册库或是公共/私有的UDDI注册中心。服务发现层是基于服务发布层的。如果Web

35、服务没有或不能被发布,那么它就不能被发现。WSFL是协议栈顶层的服务工作流层的标准。与协议栈其他的标准不同,WSFL针对的是商务流程建模和工作流1,31。2.1.5 Web服务规范Web服务完全是基于标准的技术,只有基于标准,所有的开放厂商才有相同的准则,才能够在各自的平台上开发出具有跨平台互操作能力的软件产品和解决方案。标准是达成跨平台互操作能力的灵魂。在标准的开发方面,各大技术厂商在标准化组织和承诺下,积极开展工作。目前,介入Web服务标准开发的标准化组织有W3C、OASIS、WS-I等。这些组织的工作集中在Web服务的整体架构、Web服务的访问协议、Web服务的界面描述、UDDI、WSI

36、A、WSRP以及跨平台、操作系统和编程语言的Web服务架构的互操作。由标准化组织或技术厂商开发的Web服务技术规范包括XML、XML Schema、SOAP、WSDL、UDDI、WS-Security、WSFL、WSCL、WSXL、WSIA和WSRP等。下面着重介绍一下组成Web服务规范的几大技术规范。2.1.6 Web服务技术的基石XML是整个Web服务技术架构的基石,XML规范是一组由W3C定义的规则,用于用普通文本描述结构化的数据。其开始设计时的主要目的是用来弥补HTML作为在Internet上描述数据的标准语言的不足。无论是HTML还是XML,都是从SGML演化而来的。这三种语言的相互

37、关系可以描述为:XML是SGML的一个子集,而HTML是SGML的一个具体应用实例,同样,HTML也是XML的一个应用实例,具体的来说,HTML是由XML或SGML定义出来的。由于XML和HTML有着本质上的不同具体地说,就是XML比HTML提供了更多的对内容和结构的说明和限制的机制,使得存储、查询、管理XML文档相对而言更容易。总之,XML使用一个简单而又灵活的标准格式,为基于Web的应用提供了一个描述数据和交换数据的有效手段。HTML描述了显示全球数据的通用方法,而XML提供了直接描述处理全球数据的通用方法。其主要特点如下。自描述性:这个特性使差异性可以存在,使计算机可以在没有人为干涉的情

38、况下,理解数据的含义。可扩展性:文档通过DTD或XML Schema来定义文档结构,使其他信息系统自动了解文档的内容。可校验性:用户可以通过DTD或XML Schema来校验XML文档的格式是否满足DTD或XML Schema的约束。层次结构:能够保证信息的层次性描述。丰富的链接定义:对应于HTML单一的单项通道链接,XML提供各种不同的链接,如一对多、多对一和双向链接。多样的样式表支持:XML把数据内容与它们的表现形式分开。这样既可以只关心数据的逻辑结构,也可以通过样式表来格式化数据的表现。随着XML在Internet应用中的不断普及,XML从Web网站的内容管理、内容描述起步,逐渐发散到其

39、他基于Internet的应用中。这些所有XML相关的应用如下。内容管理发布:人们依靠XML的可定义可扩展的能力来描述整个Web世界上种类繁多、样式丰富多彩的数据内容,依靠一次描述、多次表现的XML标准应用模式,使得基于XML的内容能够以多种形式进行信息发布。这些发布方式包括Web网站内容发布、电子出版内容发布以及其他出版业内容发布等。电子商务应用:在这个领域,XML一般承担以往EDI所承担的角色,人们依靠XML来描述交换商务事务信息,实现分布式的电子商务应用的交互。由于XML是可定制的可扩展的,人们制定了很多用于特定领域的商务事务信息描述规范,诸如Ariba的cXML、Commerce One

40、的xCBL以及OASIS-Open.ORG的ebXML等。数据层集成:对于当代电子商务而言,商务数据的交换是应用的关键环节,随着在电子商务应用中(比如B2B,B2C应用,尤其B2B中)商务信息交换的应用模式不断为主流应用开发所接受,面向通用领域的数据集成数据交换应用也成为了一个重要的XML应用领域,在这方面,不少电子商务应用领域(尤其B2B应用)的解决方案在陆续进入这一更广泛化的领域。应用层集成:当XML在经历了电子商务应用的经验之后,人们逐渐地不仅在数据层上完成应用系统(尤其是商务系统)的连接,同时希望能在业务层或者函数层上完成系统的互联,这也就是人们常说的Internet环境的应用的广泛互

41、联,这方面的技术主要是以XML为技术基础的Web服务系列技术。系统配置信息描述:随着XML在各种各样应用开放中的延伸,原先系统软件、应用软件中使用文本、Profile文件或者是INI文件形式进行系统、应用配置信息管理的方式逐渐被使用XML文档的管理方式所替代。正是由于XML的特点和广泛应用场合,对于Web服务而言,无论是Web服务的调用(SOAP)、Web服务界面的描述(WSDL),还是Web服务的发现(UDDI)都是使用XML作为信息描述和交换的标准手段。2.1.7 调用Web服务Web服务的发展离不开电子商务的发展,电子商务其实远远不仅是指像A这样的网络零售业的B2C模式的电子商务,其更核

42、心的更重要的是常事潜力比零售业大几个数量级的企业级电子商务应用,即B2B。传统上,B2B电子商务是基于EDI技术的,而EDI信息标准的最大缺点是在EDI世界内部,没有一个全球通用的标准。自XML技术被引入到B2B电子商务应用中去,人们发现在B2B电子商务应用环境中XML的确是一个非常优秀而且极为合适的技术。使用XML来描述商务信息使得各种B2B应用在数据层上获得了开放集成的能力。然而从技术的角度来看,这仅仅完成了应用领域中最低层次的集成:数据层集成。但要使B2B电子商务应用真正被方便地连接在一起,我们需要在数据之外,在模块层、应用层等方面也需要达成一致。正是为了解决模块层能够以一种开放的,自说

43、明的,统一的方式进行集成和交互,IBM,Microsoft,DevelopMentor等公司协作制定了Simple Object Access Protocol(SOAP1.1)规范。SOAP是在XML基础上定义的,完全继承XML的开放性和描述可扩展性。SOAP使用现有基于TCP/IP的应用层协议HTTP,SMTP,POP3等,可以获得与现有的网络通信协议最大程度的兼容。SOAP的消息路径机制和可扩充的Header和Body机制又为分布式计算提供了很好的支持。在2001年4月,在美国San Jose召开的Web服务研讨会上正式确立了SOAP作为Web服务的核心规范的地位。被设计成跨平台、跨语言

44、、跨协议地完成对象互联的SOAP逐渐显露出了它的优越性。SOAP可以看成是分布式对象访问技术的一个新的特性,比起CORBA,COM+,EJB这些传统主流的分布式对象技术,SOAP合理地解决了异构系统,异构组件对B2B电子商务全球化的束缚,加上XML已经得到广泛的应用,各种平台都可以有效地使用XML,那么使用XML重新描述和包装各种远程组建访问协议,以使各种组建平台的远程访问协议都能通过同一个标准的消息进行传输的SOAP就成了大势所趋。如图 4.5所示。CORBACORBA组件COM+COM/DCOMJ2EEEJBIIOPORPCRMISOAP Message图 4.5展示SOAP抹平组件平台差

45、异示意图SOAP为在一个松散的、分布的环境中使用XML对等地交换结构化的和类型化的信息提供了一个简单且轻量级的机制。SOAP本身并不定义任何应用语义,它只是定义了一种简单的机制,通过一个模块化的包装模型和对模块中特定格式编码的数据的重编码机制来表示应用语义。SOAP的这项能力使得它可被很多类型的系统用语从消息系统到RPC的延伸。SOAP由以下四部分组成。SOAP信封(SOAP envelope):它构造定义了一个整体的表示框架,可用于表示在消息(message)中的是什么,谁应当处理它,以及这是可选的还是强制的。SOAP消息的封装模型如图 4.6所示。SOAP EnvelopeSOAP Hea

46、derSOAP条目SOAP条目SOAP BodySOAP条目SOAP条目图 4.6关于SOAP消息的封装模型示意图SOAP编码规则(SOAP encoding rules):它定义了一个数据的编序机制,通过这样一个编序机制来定义应用程序中需要使用的数据类型,并可用于交换由这些应用程序定义的数据类型所衍生的实例。在SOAP中,数据的编码风格是基于一个简单类型系统的,这个简单类型系统可以看成是程序语言、数据库和半结构数据中不同类型系统的公共特性的泛化。SOAP远程过程调用表示(SOAP RPC representation):它定义了一个用于表示远端过程调用和响应的约定。可以想象,为实施一个基于S

47、OAP的远程方法(或过程)调用,应当需要以下信息:目标SOAP结点的URI(从一般意义上来看,可以认为是SOAP结点的入口地址);方法或过程调用;可选的方法或过程的特征;方法或过程的参数;可选的头数据。使用SOAP Header的RPC如图 4.7所示。SOAP绑定(SOAP binding):它定义了一个使用低层传输协议来完成在结点间交换SOAP信封的约定。对于一个SOAP结点来说,接受和发送SOAP消息最终是要通过与某个低层通信协议进行绑定来完成。SOAP底层协议绑定沿着SOAP消息路径在相邻的SOAP结点间工作着。SOAP协议绑定并不会单独提供一个处理模型,也不会通过协议绑定来重新指定S

48、OAP结点。SOAP协议绑定是SOAP结点实现的一个组成部分,从外部看,是SOAP结点的行为特征之一。SOAP发送者应用ASOAP处理器消息标识处理器RPC请求SOAP接收者应用BSOAP处理器消息关联性处理器RPC响应底层协议底层协议服务器A服务器B图 4.7使用SOAP Header的RPC2.2 描述Web服务自最初开始使用SOAP之后,在业界曾出现过多种基于XML的接口说明语言(IDL),其中包括IBM的NASSL、Microsoft的SDL和SCL等。所有的这些IDL识别不同的描述方式,并且包含一些特定于它们所依附的SOAP实现方案的项目(比如Apache SOAP或Microsof

49、t SOAP等)。业界很快意识到必须进行标准化,以赋予Web服务统一的界面描述能力,并获得最好的互操作能力。由IBM、Microsoft以及Ariba为首的多个技术提供商向W3C提交了WSDL规范1.1版。2001年3月,W3C接受了这一提案。WSDL是一种XML Application,它将Web服务描述定义为一组服务访问点,客户端可以通过这些服务访问点对包含面向文档信息或面向过程调用的服务进行访问(类似远程过程调用)。WSDL首先对访问的操作和访问时使用的请求/响应消息进行抽象描述,然后将其绑定到具体的传输协议和消息格式上,以最终定义具体部署的服务访问点。WSDL文档将Web服务定义为服务

50、访问点或端口的集合。在WSDL中,由于服务访问点和消息定义已从具体的服务部署或数据格式绑定中分离出来,因此可以对抽象定义进行再次利用:消息,指对交换数据的抽象描述;而端口类型,指操作的抽象集合。将Web访问地址于可再次使用的绑定向关联,可以定义一个端口,而端口的集合则定义为服务。WSDL文档在Web服务的定义中使用下列元素。WSDL Definition- isContainerTypes- isContainerMessage- isContainerPart- name- elementOperation- messagePortType- isContainerBinding- port

51、TypePort- bindingService- isContainerData Type- SimpleType- ComplexType图 4.8关于WSDL文档的元素结构图Types:数据类型定义的容器,它使用某种类型系统(一般地使用XML Schema中的类型系统)。Message:通信消息的数据结构的抽象类型定义。使用Types所定义的类型来定义整个消息的数据结构。Operation:对服务中所支持的操作的抽象描述,一般单个Operation描述了一个访问入口的请求/响应消息对。PortType:某个访问点类型所支持的操作的抽象集合,这些操作可以由一个或多个服务访问点来支持。Bin

52、ding:特定端口类型的具体协议和数据格式规范的绑定。Port:定义为协议/数据格式绑定与具体Web访问地址组合的单个服务访问点。Service:相关服务访问点的集合。以上这七种元素的关系如图 4.8所示。Types是一个数据类型定义的容器,包含了所有在消息中需要的XML元素的类型定义。Message具体定义了在通信中使用的消息的数据结构,Message元素包含了一组Part元素,每个Part元素都是最终消息的一个组成部分,每个Part都会引用一个DataType来表示它的结构。Part元素不支持嵌套(可以使用DataType来实现),都是并列出现。PortType具体定义了一种服务访问入口的

53、类型,就是传入/传出消息的模式及其格式。一个PortType可以包含若干个Operation,而一个Operation则是指访问入口支持的一种类型的调用。在WSDL里支持四种访问入口调用的模式:单请求;单响应;请求/响应;响应/请求。PortType的定义中会引用消息定义部分的一个到两个消息,作为请求或响应消息的格式。以上三种结构描述了调用Web服务的抽象定义,这三部分与具体Web服务部署细节无关,是可复用的描述。如果与一般的对象语言作比较的话,这部分可以说是IDL描述的对象,描述了对象的接口标准。Service描述的是一个具体的被部署的Web服务所提供的所有访问入口的部署细节,一个Servi

54、ce往往会包含多个服务访问入口,而每个访问入口都会使用一个Port元素来描述。Port描述的是一个服务访问入口的部署细节,包括通过哪个Web地址(URL)来访问,应当使用怎样的消息结构调用模式来访问等。其中,消息调用模式使用Binding结构来表示。Binding结构定义了某个PortType与某一种具体的网络传输协议或消息传输协议相绑定,从这一层开始,描述的内容就与具体服务的部署相关了。WSDL的设计理念完全继承了以XML为基础的当代Web技术标准的一贯设计理念:开放。WSDL允许通过扩展使用其他的类型定义语言(不止是XML Schema),允许使用多种网络传输协议和消息格式。同时,WSDL

55、也应用了当代软件工程中的复用理念,分离了抽象定义层和具体部署层,使得抽象定义层的复用性大大增加。而不同的运营公司可以采用不同的具体部署层的描述,结合抽象定义完成其自身的Web服务的描述。2.3 注册发布Web服务目前,大多数电子商务的应用和基于Web的商业服务在处理购买者、供应商、交易市场和服务提供者之间的联系方式上各不相同。这就决定了它们只能在和他们使用相同的应用和基于Web的商业服务的商业实体中进行贸易。面对这个挑战,技术领域和商业领域的领导者组成的开发小组开发了统一描述、发现与集成协议标准。这是一个非常重要的创新,它是第一个由平台提供者、软件开发者、交易市场运营者、电子商务企业和全球商务

56、领头羊为解决B2B电子商务的发展的局限性而一起提出的跨行业的解决方案。UDDI注册使用的核心信息模型由XML Schema定义。使用XML是因为它提供了平台无关的数据描述,并能很自然地描述了数据的层次关系。而选择XML Schema是因为它支持丰富的数据类型,便捷的描述方式及其按信息模型对数据进行检验的能力。UDDI XML Schema定义了六种主要信息类型,它们是技术人员在需要使用合作伙伴所提供的Web服务时必须了解的技术信息。UDDI信息模型结构图如图 4.9所示。businessEntity元素:商业实体信息。是支持对UDDI商业注册的商业信息发布和发现的核心XML元素。busines

57、sService元素和bindingTemplate元素:服务信息。businessService结构是一个描述性的容器,它将一系列有关的商业流程或分类目录的Web服务的描述组合到一起。bindingTemplate则是关于服务的入口点和构造规范的技术信息。tModel元素:规范描述的指针和技术标志。是关于调用规范的元数据,它包括服务名称、发布的服务的组织以及指向这些规范本身的URL指针等。publisherAssertion元素:描述商业实体之间关联关系的关联信息。这个机制能令多于一个的已注册的businessEntity元素以某种方式互相连接,用以表示一种特定类型的关联关系。subscri

58、ption元素:实现实体信息订阅的订阅信息。为了帮助UDDI使用者跟踪感兴趣的数据实体以及及时获得数据更新的消息,UDDI加入了订阅的功能。businessEntity:发布服务信息的商业实体的详细信息businessService:一组特定的技术服务的描述信息subscription:各种数据实体的订阅信息,反映数据变化bindingTemplate:关于服务的入口点和构造规范的技术信息publisherAssertion:两个商业实体间的关联信息tModel:服务成分或分类的规范描述,是技术指纹的基础图 4.9关于UDDI信息模型结构图除了定义一系列的数据结构,UDDI还定义了如何与这些数

59、据结构交互,即如何通过SOAP使用它们。在UDDI内有两组主要的API。Inquiry Operations(查询操作)用于搜索信息Publisher Operations(发布者操作)用于保存、编辑和删除信息2.4 Web服务的安全作为Internet 这个开放网络上的一种分布式应用,Web 服务也面临着大多数分布式应用所面临的安全威胁。具体地,包括以下几种:(1)对数据的攻击,如窃听、篡改、假冒、重放、业务否认等;(2)对系统的攻击,如授权违例、非法使用、拒绝服务、陷门、特洛伊木马等;(3)对业务流的攻击,如业务流分析。为了应对这些安全威胁,我们需要采取的措施为:Web 服务的通信安全问题

60、是要解决的基本问题,即基于XML 的SOAP消息的安全性问题。Web 服务的通信安全首先要保证通信中传输数据的安全,抵抗窃听、篡改、假冒、重放、业务否认等安全攻击,确保数据的机密性、完整性、可用性、消息源认证性和不可否认性。机密性是指保持机密数据的机密性,防止被未授权的人查看;完整性是指验证数据的完整性,确认未被更改;可用性是指消息接收者能够正确获取所需的消息内容;消息源认证性是指消息接收者能够确认消息的确来源于消息的发送者,且入侵者不可能伪装成消息发送者发送同样的消息;不可否认性是指消息发送者无法否认他已经发送过的消息,消息接收者也无法否认他已经接收到的消息。为防止系统受到安全攻击,一方面要

61、采取防火墙、入侵检测、病毒防护等物理手段,保证系统在物理上的安全;另一方面,要采用身份认证、访问控制、日志审计等安全机制,保证只有经过鉴别的合法用户才能对系统进行合法使用。其中,身份认证和访问控制是重要的研究问题。Web 服务整合、构建Web 服务业务流程是Web 服务应用的发展方向,在保证传输数据及相关系统安全的基础上,还要保证业务流程以合法的次序运行,由合法的用户发起和参与。2.5 Web服务的开发生命周期Web服务开发生命周期包括了设计和部署以及在运行时对服务注册中心、服务提供者和服务请求者每一个角色的要求。每个角色对开发生命周期的每一元素都有特定要求。开发生命周期有以下四个阶段。构建:

62、生命周期的构建阶段包括开发和测试Web服务实现,定义服务接口描述和定义服务实现描述。可以通过创建新的Web服务,把现有的应用程序变成Web服务,由其他Web服务和应用程序组成新的Web服务,从而提供Web服务的实现。部署:部署阶段包括项服务请求者或服务注册中心发布服务接口和服务实现的定义,以及把Web服务的可执行文件部署到执行环境中。运行:在运行阶段,可以调用Web服务。现在服务请求者可以进行查找和绑定操作。管理:管理阶段包括持续的管理和经营Web服务应用程序。安全性、可用性、性能、服务质量和业务流程问题都必须被解决。2.6 Web服务开发工具和平台Microsoft .NET与SUN J2E

63、E是目前的企业Web服务平台市场的两个最重要的应用框架。它们都是针对N层分布式应用的设计、集成、性能、安全性和可靠性等诸多方面,为用户提供了总体的指南和规范,基于这些指南和规范,技术提供商提供了相应的平台、工具和编程环境。在具体的应用框架中,包括了针对应用的表现层服务、服务器端进程、会话管理、商业逻辑框架、应用数据缓存、应用逻辑、持久化性、事务、安全和日志服务等等。Microsoft .NET是一个由Server、Client和Service组成的平台。.NET框架包括基本的运行库、用户接口库、CLR、C#、C+、VB.NET、Jscript.NET、ASP.NET以及.NET框架API的各个方面。它由以下三个部分组成:.NET平台:包括构建.NET服务和.NET设备软件的工具和基础框架;.NET产品和服务:包括基于Microsoft .NET的企业服务器(如BizTalk Server 2002和SQL Server 2000,他们对.NET框架提供支持);第三方软件开发商提供的.NET服务:构建在.NET平台上的第三方服务;J2EE(Java企业版)则是一组规范集,每一个规范规定了Java技术应当如何提供一种类型的功能。J2EE平台为基于多

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!