http://webservicex.net/ws/default.aspxhtml
WebService是一種跨編程語言和跨操做系統平臺的遠程調用技術。java
跨編程語言 : 服務端程序採用java編寫,客戶端程序則能夠採用其餘編程語言編寫,反之亦然!web
跨操做系統平臺 : 服務端程序和客戶端程序能夠在不一樣的操做系統上運行。編程
遠程調用 : 一臺計算機a上的一個程序能夠調用到另一臺計算機b上的一個對象的方法。瀏覽器
譬如,銀聯提供給商場的pos刷卡系統,商場的POS機轉帳調用的轉帳方法的代碼實際上是跑在銀行服務器上。服務器
再好比,amazon,天氣預報系統,淘寶網,校內網,百度等把本身的系統服務以webservice服務的形式暴露出來,讓第三方網站和程序能夠調用這些服務功能,這樣擴展了本身系統的市場佔有率,往大的概念上吹,就是所謂的SOA應用(SOA : service-oriented architecture,面向服務的體系結構)。curl
當前的應用程序開發逐步的呈現了兩種迥然不一樣的傾向:一種是基於瀏覽器的瘦客戶端應用程序,一種是基於瀏覽器的富客戶端應用程序(RIA : Rich Internet Applications),固然後一種技術相對來講更加的時髦一些(如如今很流行的Html5技術),這裏主要講前者。編程語言
基於瀏覽器的瘦客戶端應用程序並非由於瘦客戶可以提供更好的用戶界面,而是由於它可以避免花在桌面應用程序發佈上的高成本。發佈桌面應用程序成本很高,一半是由於應用程序安裝和配置的問題,另外一半是由於客戶和服務器之間通訊的問題。網站
<customer> <age>22</age> <Name>harry</Name> <Income>200</Income> <insurance>car</insurance> </customer>
SOAP/REST - Implement webservices in secure wayurl
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
二者都是用於描述基於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).
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.