常用注解:
WebService 是一種跨編程語言和跨操作系統(tǒng)平臺的遠程調(diào)用技術绝葡。
建議:一般的應用叫胖,Ajax跨域調(diào)用,以JSON作為交互媒介也不錯篙程。當然也要根據(jù)具體情況來枷畏。比如有大量的對象,集合類型虱饿,webservice還是有他的強項的拥诡。
WebService的調(diào)用原理
·WebService使用SOAP協(xié)議實現(xiàn)跨編程語言和跨操作系統(tǒng)平臺
? ? ? WebService采用HTTP協(xié)議傳輸數(shù)據(jù)触趴,采用XML格式封裝數(shù)據(jù)(即XML中說明調(diào)用遠程服務對象的哪個方法,傳遞的參數(shù)是什么渴肉,以及服務對象的返回結(jié)果是什么)冗懦。
? ? ? WebService通過HTTP協(xié)議發(fā)送請求和接收結(jié)果時,發(fā)送的請求內(nèi)容和結(jié)果內(nèi)容都采用XML格式封裝仇祭,并增加了一些特定的HTTP消息頭披蕉,以說明HTTP消息的內(nèi)容格式,這些特定的HTTP消息頭和XML內(nèi)容格式就是SOAP協(xié)議(simple object access protocol,簡單對象訪問協(xié)議) 乌奇。
SOAP協(xié)議 = HTTP協(xié)議 + XML數(shù)據(jù)格式
WebService調(diào)用之前的工作
? ? ? WebService務器端首先要通過一個WSDL文件來說明自己家里有啥服務可以對外調(diào)用没讲,服務是什么(服務中有哪些方法,方法接受的參數(shù)是什么礁苗,返回值是什么)爬凑,服務的網(wǎng)絡地址用哪個url地址表示,服務通過什么方式來調(diào)用试伙。
? ? ? WSDL(webservice description language)是基于XML格式的贰谣,它是WebService客戶端和服務器端都能理解的標準格式,其中描述的信息可以分為what,where,how等部分!(就是我們發(fā)發(fā)布webService之后迁霎,用http://.......?wsdl 訪問得到的XML標記吱抚,就是wsdl,也就是Web Service描述語言)客戶端通過這個url請求考廉,獲得wsdl規(guī)范的xml文檔片段信息秘豹,然后這里又涉及到一個新的概念SOAP(Simple Object Access Protocol)即簡單對象訪問協(xié)議,我們通過這個協(xié)議昌粤,來實現(xiàn)客戶端既绕,服務器端消息交互,SOAP使用XML消息調(diào)用遠程方法涮坐;當然交互的媒介就是xml凄贩,具體交互內(nèi)容根據(jù)wsdl文檔描述來。
? ? ? WSDL文件保存在Web服務器上袱讹,通過一個url地址就可以訪問到它疲扎。客戶端要調(diào)用一個WebService服務之前捷雕,要知道該服務的WSDL文件的地址椒丧。
更簡單來說:
? ? ? ? 1、訪問一個Web Service實際上可以看作調(diào)用一個函數(shù)救巷,唯一不同的就是這個函數(shù)是遠程的壶熏;既然是一個函數(shù),當然包含函數(shù)的聲明浦译,完成這個工作的就是WSDL(他詳細的定義了函數(shù)的原型棒假,包括函數(shù)名溯职、入口參數(shù)、出口參數(shù)帽哑,這就是WSDL中operation完成的工作)谜酒;既然是一個遠程的函數(shù),還要涉及與遠程地址的一個綁定祝拯,這是WSDL中service的任務甚带。
? ? ? 2她肯、遠程訪問就一定要有一個訪問協(xié)議佳头,WebService的訪問協(xié)議就是SOAP。
重要學習地址——? ? my.oschina.net/huangyong/blog/286155
一晴氨、Web Service基本概念
Web Service也叫XML Web Service WebService是一種可以接收從Internet或者Intranet上的其它系統(tǒng)中傳遞過來的請求康嘉,輕量級的獨立的通訊技術。是:通過SOAP在Web上提供的軟件服務籽前,使用WSDL文件進行說明亭珍,并通過UDDI進行注冊。
XML:(Extensible Markup Language)擴展型可標記語言枝哄。面向短期的臨時數(shù)據(jù)處理肄梨、面向萬維網(wǎng)絡,是Soap的基礎挠锥。
Soap:(Simple Object Access Protocol)簡單對象存取協(xié)議众羡。是XML Web Service 的通信協(xié)議。當用戶通過UDDI找到你的WSDL描述文檔后蓖租,他通過可以SOAP調(diào)用你建立的Web服務中的一個或多個操作粱侣。SOAP是XML文檔形式的調(diào)用方法的規(guī)范,它可以支持不同的底層接口蓖宦,像HTTP(S)或者SMTP齐婴。
WSDL:(Web Services Description Language) WSDL 文件是一個 XML 文檔,用于說明一組 SOAP 消息以及如何交換這些消息稠茂。大多數(shù)情況下由軟件自動生成和使用柠偶。
UDDI (Universal Description, Discovery, and Integration) 是一個主要針對Web服務供應商和使用者的新項目。在用戶能夠調(diào)用Web服務之前睬关,必須確定這個服務內(nèi)包含哪些商務方法嚣州,找到被調(diào)用的接口定義,還要在服務端來編制軟件共螺,UDDI是一種根據(jù)描述文檔來引導系統(tǒng)查找相應服務的機制该肴。UDDI利用SOAP消息機制(標準的XML/HTTP)來發(fā)布,編輯藐不,瀏覽以及查找注冊信息匀哄。它采用XML格式來封裝各種不同類型的數(shù)據(jù)秦效,并且發(fā)送到注冊中心或者由注冊中心來返回需要的數(shù)據(jù)。
二涎嚼、調(diào)用原理
實現(xiàn)一個完整的Web服務包括以下步驟:
Web服務提供者設計實現(xiàn)Web服務阱州,并將調(diào)試正確后的Web服務通過Web服務中介者發(fā)布,并在UDDI注冊中心注冊法梯; (發(fā)布)
Web服務請求者向Web服務中介者請求特定的服務苔货,中介者根據(jù)請求查詢UDDI注冊中心,為請求者尋找滿足請求的服務立哑; (發(fā)現(xiàn))
Web服務中介者向Web服務請求者返回滿足條件的Web服務描述信息夜惭,該描述信息用WSDL寫成,各種支持Web服務的機器都能閱讀铛绰;(發(fā)現(xiàn))
利用從Web服務中介者返回的描述信息生成相應的SOAP消息诈茧,發(fā)送給Web服務提供者,以實現(xiàn)Web服務的調(diào)用捂掰;(綁定)
Web服務提供者按SOAP消息執(zhí)行相應的Web服務敢会,并將服務結(jié)果返回給Web服務請求者。(綁定)
使用CXF開發(fā)Web Service服務端 小例子:? ? http://blog.csdn.net/yangwenxue_admin/article/details/51059125
我的項目所在位置: ? ?G:\FFCS\WebService\cxf_ws_demo1
編寫SocketService,完成字母小寫轉(zhuǎn)大寫功能