J2EE基礎之Web服務簡介

J2EE基礎之Web服務簡介

1、什么是Web服務?

?????? 在人們的日常生活中,經常會查詢網頁上某城市的天氣信息,這些信息都是動態的、實時的,它是專業的氣象站提供的一種服務。例如,在網上購物時,通常采用網上支付的方式,這是通過使用第三方提供的支付工具來實現的。在網絡上提供這樣的服務,我們稱之為Web服務。

????? 從軟件開發者的角度來看,Web服務是一組規范的集合。這種規范用來定義不同應用系統之間是如何交互的,包括信息傳遞的內容、格式,信息的傳遞協議,以及相關的安全、策略和互操作等關鍵特性。

????? 從編程使用者的角度來看,Web服務是一類應用程序,是能夠用編程的方法通過Web調用來實現某個功能的應用程序。

?

2、Web服務的特點

1)封裝性:

?? ? ? ? 對于Web服務使用者而言,僅能看到Web服務提供的功能列表,Web服務的具體實現和運行平臺對于使用者是不可見的。

(2)松耦合性

?????????對于Web服務的使用者來說,只要Web服務的調用界面不變,Web服務的實現發生任何變化對于他們來說都是無法感受到的。

(3)使用標準協議

?????????Web服務所有的公共協議都使用標準協議描述、傳輸和交換。

(4)高度可集成的能力

?????????由于Web服務采用簡單、易于理解的標準協議,完全屏蔽了不同平臺的差異,無論是CORBADCOM還是EJB都可以通過這種標準協議進行互操作,實現系統的高度集成性。

(5)互操作性

?????????實現不同系統間的相互調用,具有語言無關性,支持CORBADCOMEJB等多種組件標準,支持HTTPSMTP等通信協議。

?

3Web服務體系結構

?????? Web服務的體系結構中共有三種角色,服務提供者(服務器)、服務請求者(客戶端)和服務注冊中心(可選的角色),他們之間的交互的操作構成了Web服務的體系結構。下面請看圖一(Web服務體系結構示意圖):

?

?圖一:Web服務體系結構示意圖

4、Web服務技術標準

????? Web服務是一段可以用XML發現、描述和訪問的代碼。Web服務規范是一組協議規范的集合,可以分為兩部分:基于Web服務規范和擴展Web服務規范,這些規范包括以下技術標準:

(1)基于Web服務的規范

???????1XML

??????????XMLWeb服務中表示數據的基本格式,是描述Web服務數據的標準方法。除了易于建立和分析外,XML的主要優點在于語言無關性和平臺無關性,從而實現了Web服務的語言無關性和平臺無關性。

???????2SOAP

??????????簡單對象訪問協議(Simple Object Access ProtocolSOAP)是表示Web服務信息交換的協議,是在一個分散的、分布的環境中交換信息的簡單協議,是基于XML的。它詳細說明了傳輸Web服務的消息的格式,包括四個部分:SOAP封裝、SOAP編碼規則、SOAP遠程表示和SOAP綁定。

???????3WSDL

??????????Web服務描述語言(Web Services Description Language,WSDL)是用來對Web服務進行描述的標準規范,它采用了XML格式描述了調用Web服務所需的所有信息。應用程序可以從WSDL文件中提取這些詳細信息,并生成調用Web服務需要的編程接口文件。

???????4UDDI

??????????統一描述、發現和集成(Universal DescriptionDiscovery and Integration,UDDI)是一個規范,它定義了發布和發現Web服務的方法。利用它,應用程序可以把自己的功能提供給其他應用程序或查找并使用其他應用程序提供的服務。通過使用UDDI的發現Web服務,企業可以注冊Web服務,允許其他企業代用本身的Web服務。

2)擴展Web服務規范

????? 1WS-Security

???? ? ? ? 用來處理加密和數字簽名,允許創建特定類型的應用程序,以防止竊聽消息,且能實現不可否認的功能。

? ? ? 2WS-Policy

??? ? ? ?? 用來對WS-Security進行擴展,通過制定復雜的策略來定義哪些用戶可以采用哪種方式來使用此Web服務。

? ? ? 3WS-I

??? ? ? ?? WS-I提供了一組可用于防止出現各種問題的標準和實踐,并提供了標準化測試來檢查可能出現的問題。

? ?? 4WS-BPEL

????????? 單個Web服務在多數條件下很難滿足復雜的企業應用需求。往往需要將多個Web服務組合為一個完整的系統,而WS-BPEL提供了用于指定創建此類系統所必須的交互。

?

5Web服務簡單應用實例

?? 在此推薦一篇博客,實例講解超詳細,很有愛哦:http://www.cnblogs.com/yisheng163/p/4524808.html?utm_source=tuicool

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/542886.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/542886.shtml
英文地址,請注明出處:http://en.pswp.cn/news/542886.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

c# uri.host_C#| Uri.CheckHostName()方法與示例

c# uri.hostUri.CheckHostName()方法 (Uri.CheckHostName() Method) Uri.CheckHostName() method is a static method that returns the object of UriHostNameType enum than we need to compare returned enum object with UriHostNameType.Dns. If both are equal then the …

ue4模型導出_MAYA動畫導出以及導入UE4的方式、方法

(此教程使用maya2016、UE4.21制作截圖,其他版本只需找到相應的功能同理制作即可)常用的工具最好創建快捷方式;整理模型常用的一鍵三連:導出常用的一鍵三連:動畫導出前準備:(Tpose文件導入UE4后相當于角色的骨架網格物體…

計算機安裝重裝出現錯誤,一鍵重裝失敗怎么辦?電腦重裝系統失敗的原因和解決方法...

在電腦出現問題的時候,我們可以通過重裝系統來解決電腦問題。但有的時候重裝系統失敗,無法進行安裝,這可怎么辦呢?下面就讓小編為大家帶來電腦重裝系統失敗的原因和解決方法。1、啟用了防毒功能問:當重裝系統時&#x…

ctype函數_PHP ctype_cntrl()函數與示例

ctype函數PHP ctype_cntrl()函數 (PHP ctype_cntrl() function) ctype_cntrl() function is a character type (CType) function in PHP, it is used to check whether a given string contains all control characters or not. ctype_cntrl()函數是PHP中的字符類型(CType)函數…

數據的輸入輸出

字符輸出函數putchar int putchar(int c) 函數參數:c為字符常量或表達式函數返回值:輸出的字符函數功能:在標準輸出上顯示一個字符格式化輸出函數printfint printf (const char *format, …),成功返回輸出的字節數,失敗返回-1&…

python匹配郵箱_在Python中使用正則表達式同時匹配郵箱和電話并進行簡單的分類...

在Python使用正則表達式需要使用re(regular exprssion)模塊,使用正則表達式的難點就在于如何寫好pre.compile(r 正則表達式)的內容。下面是在Python中使用正則表達式同時匹配郵箱和電話并進行簡單的分類的代碼,本文只進行了簡單的分類,讀者可…

服務器時間延遲,如何處理從服務器延遲響應時間'力逼近'

使用下面的示例代碼來執行login過程。您可以使用AsyncTask來執行登錄過程。LoginActivity類,它使用AsyncTask。在Login按一下按鈕,我executing的AsyncTask。在登錄過程中,這將顯示一個ProgressDialog過程完成后,駁回ProgressDialo…

printf中的指針變量_C語言中的printf()示例/變量

printf中的指針變量As we know that, printf() is used to print the text and value on the output device, here some of the examples that we wrote to use the printf() in a better way or for an advance programming. 眾所周知, printf()用于在輸出設備上打…

System Center Technical Preview DPM(2016)對Exchange2016的災難恢復

其實備份很簡單,就是做好備份計劃即可,但往往客戶最擔心的是備份的東西在真的災難恢復時是否可以恢復出來可用,這才是考驗備份軟件的最關鍵時刻,因此象備份Exchange這樣的應用時對于管理員來說除了會玩備份軟件外還需要熟悉Exchan…

as真機調試_如何使用真機調試android程序

展開全部第一步:將我們開發所用的Android真機的USB調試功能打開(打開方法為Settings(設置32313133353236313431303231363533e59b9ee7ad9431333365656531)Applications(應用程序)Development(開發)勾選USB debugging(USB調試)),然后通過usb連接線連接到開…

css如何制作橫幅,基本的CSS橫幅

我確定這一定非常簡單,但我遇到了問題!我想要的效果是每頁上橫幅或標題的純色塊,其中包含一些文字。但是為了增加一些裝飾,我已經為每一面做了一個小圖形,這只是一個從橫幅顏色漸變為白色的小方塊。所以整體效果是一個…

教你在Ubuntu上體驗Mac風格

導讀老實說,我是個狂熱的 Ubuntu 迷,我喜歡 Ubuntu 默認的 Unity 主題樣式外觀。此外,還有很多關于 Ubuntu 14.04 的漂亮圖標主題樣式 可用來美化默認的外觀。但正如我上面提到的仍有很多用戶喜歡 Mac OS X 的主題樣式,我希望這篇…

在Python中升級灰度圖像

Upscaling of an image refers to enlarging the size of an image. 圖像放大是指放大圖像的大小。 In this program, we will be using two functions of OpenCV-python (cv2) module.. lets see their syntax and descriptions first 在此程序中,我們將使用Open…

開機未發現nvidia控制面板_Windows10或者其他操作系統開機提示“未發現NVIDIA控制面板,從Microsoft Store中安裝NVIDIA控制面板”的解決辦法...

昨天深夜,有一個朋友加QQ說他電腦出了問題,不知道咋的就變成了提示“未發現NVIDIA控制面板,從Microsoft Store中安裝NVIDIA控制面板” 里面數據還是挺重要的,問是否有辦法操作,具體看圖; 經過詢問得知,客戶是在安裝一個軟件,反復運行后不出現,以為中毒了,就重啟了一下…

打印機服務器未響應,打印機不能打印,點擊打印后沒反應

①我的電腦,右鍵點管理,服務和應用程序里的服務,找到Print Spooler,啟動類型自動,服務狀態點啟動,確定重啟。②控制面板--》管理工具--》服務---》print spooler改為啟動。③打印機沒設置成為默認打印機&am…

HDU 5145 - NPY and girls

題意&#xff1a; cases T(1≤T≤10) (0<n,m≤30000) (0<ai≤30000)    n個數ai 表示n個女孩所在教室 m次詢問 [L,R]&#xff08;1 < L < R < n&#xff09;   問訪問所有女孩的順序方案數(進教室順序)為多少(一次進教室只能訪問一個人) 分析&…

安卓投屏軟件_有哪些好用又免費的手機投屏到電腦的軟件?

推薦一款免費、好用的投屏軟件&#xff0c;叫做【快投屏】&#xff0c;支持多端無線一鍵投屏、遠程投屏&#xff0c;不限制使用時間&#xff0c;不壓縮投屏畫質。快投屏 - 手機投屏到電視,電腦的無線投屏軟件?支持以下幾種投屏&#xff1a;手機投電視手機投電腦手機投手機電腦…

dnf韓服服務器維護中,DNF2019韓服4.30維護:這些職業被加強

DNF韓服4.30維護DNF2019韓服4.30更新內容 DNF95版本4.30韓服更新內容 DNF95版本職業平衡。相信大家都很想知道吧&#xff0c;一起來看看吧。地下城一直被稱為鬼劍士的游戲&#xff0c;無論是在何地圖&#xff0c;如果看不到鬼劍士的話那就是太陽打西邊出來了&#xff0c;9成勇士…

2019寫給對象的話_戀愛中寫給對象看的說說 2019最流行的情侶間情話

1.我發現你是個照騙&#xff0c;因為本人比照片好看多了。2.我昨晚夢見你了&#xff0c;不知是你想我了還是我想你了。3.你有地圖嗎&#xff0c;我在你的眼睛里迷路了。4.我已經好久沒這樣喜歡一個人了&#xff0c;就是想到你就會笑的那種。5.當自己最愛的人和最愛自己的人是同…

java 實現 堆排序算法_C程序實現堆排序算法

java 實現 堆排序算法Heap Sort is a comparison-based sorting algorithm that makes use of a different data structure called Binary Heaps. Let us understand some important terms, 堆排序是一種基于比較的排序算法&#xff0c;該算法利用稱為二進制堆的不同數據結構。…