当前位置:编程学习 > 网站相关 >>

再度牵手webservice—验证磨刀不误砍柴工的真理

初见WebService
 
   翻开以往的笔记,记录的时间是去年11月22号。软考完初次接触java,接触J2EE,初次与WebService相见。现在想想,时隔一年。当时如此不起眼的他,竟然在我的生命中变得如此重要。
   听java高级讲师—王勇,慷慨激昂滴介绍着他,介绍他的由来,介绍他的神通广大,但对当时弱弱的我来说,与如此高深的他,根本不可能。因此,我果断的放弃他,而是与当时活跃的jsp,servlet,xml打成一片。


再见WebService


  经过大半年的修炼,对于自己的Java Web还算满意。带着这份满意自信心,我北上了。
  可就在北上的这段时间里,我又见到了去年的他—WebService。而这次却无法逃避,所以硬着头皮与此较量一番。在与他切磋的过程中,发现他很好,但是由于工作时间原因,并没有与他系统细细探讨,而是一切只是为了应付工作,从他身上只学了零零碎碎的东东。


深入接触WebService


  在北京待了两个月,又回到家里继续修炼。因为在公司中的职务就是干通信—WebService。所以回来想系统的整理学习WebService。
  
  WebService到底是什么?
 
  经过两个月的实践以及在家修炼的体会,最通俗的就是,WebService就是一个应用系统向外界提供了一组可调用接口api。
  
  那为什么要用WebService?
 
  我们都知道,计算机程序语言,各有优缺点。比如java语言,方便。使用java开发东西,尤其是web东西,比较直白,方便。若使用C语言开发的系统,一般都比较稳定。
  既然各有优缺点,所以很多系统都融合两者。对于程序开发者来说,开发简单,方便,并且对于老总来说,肯定也是想怎么方便怎么来,既然客户给的价钱,为何要给自己找麻烦,为何要跟自己过不去呢?但对于客户来说一般的客户是不懂技术的,但是他们一定要稳定、可靠性高。因此对于老总来说,无疑是两种语言的结合。
  既然是两种语言的结合,又要完美结合,谁能做到呢?
  YES,WebService就是一个很好选择。
 
  WebService是与程序设计语言无关。比如C++与java通信。我在公司的工作就是搞C++与java通信滴。所以这点,深有体会。并且也有相应的博客介绍哈。
 
  WebService是与平台无关。无论是使用的windows还是linux。我们在公司的开发的是window,但是一期客户在windows下,二期客户是在linux下。
   以上两种好处,是本人亲身经历,当然还有很多未经历的事情,比如跨越防火墙通信,B2B集成。这些还有待经历……


   WebService优势技术后台?
 
   一个人火,肯定有资本。无论是正面还是反面的吧。正面的是资本,反面的是勇气。一样的自信,甚至后者比前者更有自信。
   因此可以推断,WebService肯定也有响当当的后台支持。否则WebService不会火到现在。
  
   XML技术支持。XML是WebService表示数据的格式。正式因为XML与语言无关,与平台无关。才造就了WebService特点。
   SOAP支持。SOAP:简单对象访问协议。表示通信传递数据的格式。soap是基于xml或xsd形式的。通信的消息格式应该是怎么样的,继续往下阅读,我们会继续介绍。
   WSDL支持。WebService描述语言。也就是类似于我们设计或开发的文档。我们是根据文档进行开发项目的。wsdl就是描述了,你调用方法的名称以及其中参数以及参数名称。
   附:在公司中,因为我是在做C++,与java进行通信。并且C++这块做客户端,java端服务WebService,启动服务后,我直接访问wsdl,然后根据访问的wsdl进行开发。
   
  WebService调试通信工具?
 
  WebService开发,主要是消息传递,如何调试我们的程序?因为主要是通信方面,所以注意力肯定是在传递的消息。只要我们观察我们发送的消息或接受到的消息是否正确,就可以定位错误点。
  附:因为在公司实习中调试C++与Java通信时,java方法一直测试不通。用工具,发现传递的消息竟然是参数名称不正确。这个问题soap传递信息,后面我们会继续讲解。
 
  用C++开发时,使用的是:wireshark软件。
 
  

  \
   \
  
   \


 
  
 
  在做java开发时,使用的工具如下:


  

 
 
 
   \
  \


 
 
   讲到这,不知你是否对WebService有了整体的了解?如何对于其中某一项不懂或不理解,先别急,慢慢来,后面我们会继续讲解WebService中的Soap消息是什么格式的,然后到底C++与Java是如何通信的。
   整体上,宏观上知道,了解下WebService,这样的话,有了宏观概念以及相应的利器工具,那就什么也不怕了,follow me。


 

 

补充:Web开发 , 其他 ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,