• What is a web service?

http://webservicex.net/ws/default.aspx

WebService是一种跨编程语言和跨操作系统平台的远程调用技术。

跨编程语言 : 服务端程序采用java编写,客户端程序则可以采用其他编程语言编写,反之亦然!

跨操作系统平台 : 服务端程序和客户端程序可以在不同的操作系统上运行。

远程调用 : 一台计算机a上的一个程序可以调用到另外一台计算机b上的一个对象的方法。

譬如,银联提供给商场的pos刷卡系统,商场的POS机转账调用的转账方法的代码其实是跑在银行服务器上。

再比如,amazon,天气预报系统,淘宝网,校内网,百度等把自己的系统服务以webservice服务的形式暴露出来,让第三方网站和程序可以调用这些服务功能,这样扩展了自己系统的市场占有率,往大的概念上吹,就是所谓的SOA应用(SOA : service-oriented architecture,面向服务的体系结构)。

  • Why do we use web service?

当前的应用程序开发逐步的呈现了两种迥然不同的倾向:一种是基于浏览器的瘦客户端应用程序,一种是基于浏览器的富客户端应用程序(RIA : Rich Internet Applications),当然后一种技术相对来说更加的时髦一些(如现在很流行的Html5技术),这里主要讲前者。

基于浏览器的瘦客户端应用程序并不是因为瘦客户能够提供更好的用户界面,而是因为它能够避免花在桌面应用程序发布上的高成本。发布桌面应用程序成本很高,一半是因为应用程序安装和配置的问题,另一半是因为客户和服务器之间通信的问题。

  • What is XML?
<customer>
<age>22</age>
<Name>harry</Name>
<Income>200</Income>
<insurance>car</insurance>
</customer>
  • Famous protocols used in web services

SOAP/REST - Implement webservices in secure way

SOAP : (Simple Object Access Protocol)简单对象访问协议 (说白了就是xml文档传输)

(1) 暴露操作

(2) 基于XML

(3) XML定义了请求和响应的具体数据,要进行的操作等等

REST : (Rerepresentational State Transfer)表示性状态转换

(1) 暴露资源

(2) 可以基于JSON,XML,HTML

(3) 利用HTTP请求方式GET,POST,PUT,DELETE约定事务操作

SOAP Protocol - how to write XML

HTTP Protocol - send the XML

  • What is WSDL and WADL?

两者都是用于描述基于HTTP 的 Web 应用程序接口

1.WSDL(Web Services Definition Language)是面向接口的描述, 基于SOAP

http://www.webservicex.net/CurrencyConvertor.asmx?WSDL

2.WADL(Web Application Description Language )是面向资源的描述, 基于REST

WADL: The REST answer to WSDL

In order to obtain metadata description capabilities for REST, like the ones WSDL gives to SOAP, developers have created WADL (Web Application Description Language).

  • Java OR groovy?

Groovy is an object-oriented programming language for the Java platform. It is a dynamic language with features similar to those of Python, Ruby, Perl, and Smalltalk. It can be used as a scripting language for the Java Platform, is dynamically compiled to Java Virtual Machine (JVM) bytecode, and interoperates with other Java code and libraries. Groovy uses a Java-like curly-bracket syntax. Most Java code is also syntactically valid Groovy, although semantics may be different.

http://blog.csdn.net/MissYourKiss/article/details/5793979

[Training Video - 1] [Introduction to Web services]的更多相关文章

  1. Introduction to Web Services

    What are Web Services? Web Services are client and server applications that communicate over the Wor ...

  2. RESTful Web Services: A Tutorial--reference

    As REST has become the default for most Web and mobile apps, it's imperative to have the basics at y ...

  3. The Python web services developer: XML-RPC for Python

    原文地址:http://www.ibm.com/developerworks/webservices/library/ws-pyth10/index.html 摘要:概括地说,您可以将 XML-RPC ...

  4. Web 建站技术中,HTML、HTML5、XHTML、CSS、SQL、JavaScript、PHP、ASP.NET、Web Services 是什么(转)

    Web 建站技术中,HTML.HTML5.XHTML.CSS.SQL.JavaScript.PHP.ASP.NET.Web Services 是什么?修改 建站有很多技术,如 HTML.HTML5.X ...

  5. .NET RESTful Web Services入门

    很早之前看到过RESTful Web Services,并未在意,也没找相关资料进行学习.今天偶尔有一机会,就找了点资料进行研究,发现RESTful真是“简约而不简单”.下面用示例来说明: 1 项目结 ...

  6. 分分钟带你玩转 Web Services

    当大型需求被数个公司分割开来,各公司系统相互交换数据的问题就会接踵而来. 毕竟是多家不同的公司的产品,研发开发语言.采用技术框架基本上是百花齐放. 怎样让自家系统提供的服务具有跨平台.跨语言.跨各种防 ...

  7. BizTalk发布WS-Security的web services

    最近做个项目,biztalk跟OTM(Oracle Transportation Management)系统做对接,双方通过web services通讯,这部分是BizTalk发布WS-Securit ...

  8. BizTalk调用WS-Security的web services

    最近做个项目,biztalk跟OTM(Oracle Transportation Management)系统做对接,双方通过web services通讯,这部分是BizTalk调用OTM的web se ...

  9. 【整理】动态加载Web Services

    WebClient client = new WebClient(); String url = "http://localhost/MESAPIWebService/MESAPI.asmx ...

随机推荐

  1. 阻塞和非阻塞I/O

    阻塞和非阻塞I/O是设备访问的两种不同模式,驱动程序可以灵活的支持用户空间对设备的这两种访问形式.        阻塞操作是指在执行设备操作时,若不能获得资源,则挂起进程直到满足可操作的条件后在进行操 ...

  2. 机器学习 ----Tensorflow

    机器学习笔记4-Tensorflow线性模型示例及TensorBoard的使用 机器学习笔记3-Tensorflow简介 机器学习笔记2 – sklearn之iris数据集 机器学习笔记1 - Hel ...

  3. HBase,region以及HFile概念

    什么是HBase的Region? 大家一定对一个词不陌生:域分区,这个域就是Region:Region定义为key的一个取值范围的子集的数据载体:比如常见的域分区有固定大小分区,比如1-10一个reg ...

  4. 安装memcached服务 和 php 安装memcache扩展

    这是所有的命令,至于哪个命令是干嘛的自己悟去吧  ,顺便穿插一些知识点 安装libevent cd /home/ wget  http://www.monkey.org/~provos/libeven ...

  5. java Long

    1. Long.valueOf(b) 返回的是对象 public static Long valueOf(String s) throws NumberFormatException { )); } ...

  6. Python开发之用户密码存储

    在各种线上应用中,用户名密码是用户身份认证的关键,它的重要性不言而喻.一方面,作为保护用户敏感数据的钥匙来说,一旦被破解,系统将敞开大门完全不设防.另一方面,密码这把钥匙本身就是非常敏感的数据:大多数 ...

  7. go语言数组与切片比较

    一.数组 与其他大多数语言类似,Go语言的数组也是一个元素类型相同的定长的序列. (1)数组的创建. 数组有3种创建方式:[length]Type .[N]Type{value1, value2, . ...

  8. C# Panel控件截图

    [System.Runtime.InteropServices.DllImportAttribute("gdi32.dll ")] private static extern bo ...

  9. javascript instanceof,typeof的区别

    区分string 与 String的区别 为什么结果会是false呢? <script type="text/javascript"> var aColors = [& ...

  10. ASP.NET中高级程序员 面试题

    1. 简要说一下.Net的编译过程. 2.ASP.NET与ASP的区别 3.谈一下ASP.NET页面生命周期 4.ASP.NET程序的运行机制.可以从一个页面的请求到返回的角度谈 5.Javascri ...