`

java 中webservice

阅读更多
   当前,WebService是一个热门话题。但是,WebService究竟是什么?什么情况下应该用WebService?什么情况下不应该用WebService?是需要我们正确认识的。
  Web Service 是一种新的web应用程序分支,他们是自包含、自描述、模块化的应用,可以发布、定位、通过web调用。Web Service可以执行从简单的请求到复杂商务处理的任何功能。一旦部署以后,其他Web Service应用程序可以发现并调用它部署的服务。
  实际上,WebService的主要目标是跨平台的可互操作性。为了达到这一目标,WebService完全基于XML(可扩展标记语言)、XSD(XMLSchema)等独立于平台、独立于软件供应商的标准,是创建可互操作的、分布式应用程序的新平台。由此可以看出,在以下三种情况下,使用WebService会带来极大的好处。
  长项一:跨防火墙的通信
  如果应用程序有成千上万的用户,而且分布在世界各地,那么客户端和服务器之间的通信将是一个棘手的问题。因为客户端和服务器之间通常会有防火墙或者代理服务器。在这种情况下,使用DCOM就不是那么简单,通常也不便于把客户端程序发布到数量如此庞大的每一个用户手中。传统的做法是,选择用浏览器作为客户端,写下一大堆ASP页面,把应用程序的中间层暴露给最终用户。这样做的结果是开发难度大,程序很难维护。
    长项二:应用程序集成
  企业级的应用程序开发者都知道,企业里经常都要把用不同语言写成的、在不同平台上运行的各种程序集成起来,而这种集成将花费很大的开发力量。应用程序经常需要从运行在IBM主机上的程序中获取数据;或者把数据发送到主机或UNIX应用程序中去。即使在同一个平台上,不同软件厂商生产的各种软件也常常需要集成起来。通过WebService,应用程序可以用标准的方法把功能和数据“暴露”出来,供其它应用程序使用。
  例如,有一个订单登录程序,用于登录从客户来的新订单,包括客户信息、发货地址、数量、价格和付款方式等内容;还有一个订单执行程序,用于实际货物发送的管理。这两个程序来自不同软件厂商。一份新订单进来之后,订单登录程序需要通知订单执行程序发送货物。通过在订单执行程序上面增加一层WebService,订单执行程序可以把“AddOrder”函数“暴露”出来。这样,每当有新订单到来时,订单登录程序就可以调用这个函数来发送货物了。
  长项三:B2B的集成
  用WebService集成应用程序,可以使公司内部的商务处理更加自动化。但当交易跨越供应商和客户、突破公司的界限时会怎么样呢?跨公司的商务交易集成通常叫做B2B集成。
  WebService是B2B集成成功的关键。通过WebService,公司可以把关键的商务应用“暴露”给指定的供应商和客户。例如,把电子下单系统和电子发票系统“暴露”出来,客户就可以以电子的方式发送订单,供应商则可以以电子的方式发送原料采购发票。当然,这并不是一个新的概念,EDI(电子文档交换)早就是这样了。但是,WebService的实现要比EDI简单得多,而且WebService运行在Internet上,在世界任何地方都可轻易实现,其运行成本就相对较低。不过,WebService并不像EDI那样,是文档交换或B2B集成的完整解决方案。WebService只是B2B集成的一个关键部分,还需要许多其它的部分才能实现集成。
  用WebService来实现B2B集成的最大好处在于可以轻易实现互操作性。只要把商务逻辑“暴露”出来,成为WebService,就可以让任何指定的合作伙伴调用这些商务逻辑,而不管他们的系统在什么平台上运行,使用什么开发语言。这样就大大减少了花在B2B集成上的时间和成本,让许多原本无法承受EDI的中小企业也能实现B2B集成。
   短处一:单机应用程序
  目前,企业和个人还使用着很多桌面应用程序。其中一些只需要与本机上的其它程序通信。在这种情况下,最好就不要用WebService,只要用本地的API就可以了。
    短处二:局域网的同构应用程序
  在许多应用中,所有的程序都是用VB或VC开发的,都在Windows平台下使用COM,都运行在同一个局域网上。例如,有两个服务器应用程序需要相互通信,或者有一个Win32或WinForm的客户程序要连接局域网上另一个服务器的程序。在这些程序里,使用DCOM会比SOAP/HTTP有效得多。
  总之,只要从应用程序结构的角度看,有别的方法比WebService更有效、更可行,那就不要用WebService
分享到:
评论

相关推荐

    java中webService生成客户端

    在Java开发中,Web服务(Web Service)是一种基于标准协议(如SOAP、REST等)的跨平台、跨语言通信方式,使得不同的系统间能够互相调用功能。本篇将详细介绍如何在Java环境中,利用WSDL(Web Service Description ...

    java调用webservice实例代码

    Java调用WebService是一种常见的在Java应用中集成外部服务或与不同平台进行数据交换的技术。本实例将通过两个Web小项目,一个是客户端(Client),另一个是WebService服务器端,来阐述如何在Java中实现这一功能。 ...

    java调用webservice.pdf

    通过`Endpoint.publish`方法可以将WebService的实现类注册到一个URL地址上,这样其他系统就可以通过该URL来调用WebService中定义的方法。例如代码片段“Endpoint endpoint=Endpoint.publish("***", hello)”展示了...

    java调用webservice.zip

    java调用webservicejava调用webservice.zipjava调用webservice.zipjava调用webservice.zipjava调用webservice.zipjava调用webservice.zipjava调用webservice.zipjava调用webservice.zipjava调用webservice.zipjava...

    java 利用webservice传输文件

    在“java 利用webservice传输文件”的场景中,JACOB可能被用来执行以下任务: 1. **文件操作**:Windows系统有许多内置的COM组件,如Scripting.FileSystemObject,可用于读写文件、创建目录等。通过JACOB,Java程序...

    C#调用JavaWebService

    调用WebService,最简单的办法当然是直接添加WEB引用,然后自动产生代理类,但是在调用JAVA的WebService时并没有这么简单,特别是对于SoapHeader的处理,通过C#添加Web引用方式访问JavaWebService的方法,除了string...

    Java开发WebService实例

    ### Java开发WebService实例详解 在IT领域,尤其是企业级应用开发中,WebService作为一种标准化的、跨平台的服务交互方式,被广泛应用于系统间的数据交换与服务调用。本文将基于给定的“Java开发WebService实例”...

    java发布webservice接口

    java开发过程中,很多地方都会遇到数据传递,远程获取数据问题,我这个简单的webservice接口发布可以在java开发过程中,很多地方都会遇到数据传递,远程获取数据问题,我这个简单的webservice接口发布可以在

    JAVA调用webservice并解析xml

    2. **创建WebService客户端**:使用WSDL(Web Service Description Language)文件,你可以自动生成Java客户端代码。Eclipse和MyEclipse都有工具可以做到这一点。WSDL文件描述了Web服务的接口、操作、消息格式等。 ...

    java版WebService生成客户端和服务端的实例

    在Java世界中,WebService是一种基于XML的开放标准技术,它允许不同系统间的应用程序进行通信,跨越不同的操作系统和编程语言。本实例将详细讲解如何使用Apache Axis1.4工具来生成Java版的WebService服务端和客户端...

    java中webservice常用jar包

    在做webservice的过程中,总结的常用webservice的jar包,wsdl4j-1.6.1.jar、wstx-asl-3.2.0.jar、xfire-all-1.2.6.jar、XmlSchema-1.4.2.jar,jdom.jar,emayclient.jar,commons-codec-1.5.jar

    java 调用 webService工具类

    Java中的JAX-WS(Java API for XML Web Services)框架是处理SOAP WebService的标准库。 3. **JAX-WS**: JAX-WS提供了创建和消费SOAP WebService的API,包括`javax.jws.WebService`注解用于声明服务端点,以及`...

    JAVA调用WEBSERVICE接口

    JAVA调用WEBSERVICE接口

    java实现webservice实例.doc

    在Java中实现WebService实例需要使用到Apache Axis工具。Axis是一个开源的WebService实现框架,提供了一个完整的WebService解决方案。它支持SOAP、WSDL和UDDI等WebService标准协议。 下面是使用Java实现WebService...

    java调用WebService实例

    Java调用WebService是一种常见的在分布式系统中实现服务交互的方式,主要应用于不同系统间的数据共享和功能集成。在Java中,有多种库可以帮助我们完成这项任务,其中之一就是Apache Axis2。本篇文章将详细介绍如何...

    java注解webservice学习第一篇

    在Java Web服务(WebService)开发中,注解的应用极大地简化了服务的创建和配置。本文将深入探讨如何使用Java注解来构建Web服务,并结合给出的“lib”压缩包文件,推测可能包含了一些用于支持Web服务的库文件。 ...

    java调用json参数的webservice

    在探讨Java调用带有JSON参数的WebService之前,我们首先需要了解几个关键的技术概念:Java、JSON以及WebService。 Java是一种广泛使用的编程语言,它具有面向对象、跨平台、多线程以及健壮性等特点。Java在企业级...

    Java-WebService应用实例

    Java WebService应用实例是Java开发中的一个重要组成部分,它允许不同平台和语言的系统之间通过标准接口进行通信。在本实例中,我们主要关注如何在Java环境中实现和使用WebService,特别是结合Spring框架集成XFire...

    java webService接口开发案例

    Java WebService接口开发是将Java应用程序暴露为网络服务的一种方式,允许不同系统间的数据交换和交互。本案例将深入探讨如何使用Java实现Web服务的创建、发布和调用。 一、理解WebService WebService是一种基于...

    java调用webservice接口案例,service调用webservice接口

    java调用webservice接口案例,精简,service调用webservice接口案例;不用生成一堆代码,逻辑清晰

Global site tag (gtag.js) - Google Analytics