Liver's Java
          我不夠貪心!其實我應該明白,心有多貪,舞臺就會有多大!堅持!奮斗!
          posts - 4,  comments - 6,  trackbacks - 0
          你可能早就聽說過Web Service了,你也可能已經對Web Service有了一些概念,現在不管是在什么場合,談到以后發展的新趨勢,大家都會提到Web Service。世界上的頂級公司,不管是微軟、IBM還是SUN,都開始把 Web Service頻繁地掛在嘴邊。大多數媒體也開始鼓吹Web Service是多么的好,多么的有前途或者“錢”途……但Web Service 到底是什么呢?數據庫通過網頁實現服務?網絡上的協議?還是一種軟件的標準?

          在http//www.hexiesoft.net 上你可以欣賞到.NET下使用微軟開發工具建立的Web Service企業級ERP應用系統。

          在 http//dwdemos.alphaworks.ibm.com/HospitalProj/index.html上,你可以體驗使用IBM開發工具創建的提供醫療保險信息查詢的Web Service。

          Web Service概念

          什么是 Web Service呢?從表面上看,Web Service就是一個應用程序,它向外界暴露出一個能夠通過Web進行調用的API。這就是說,你能夠用編程的方法通過Web調用來實現某個功能的應用程序。例如,筆者創建一個Web Service,它的作用是查詢某公司某員工的基本信息。它接受該員工的編號作為查詢字符串,返回該員工的具體信息。你可以在瀏覽器的地址欄中直接輸入HTTP GET請求來調用羅列該員工基本信息的ASP頁面,這就可以算作是體驗Web Service了。

          從深層次上看,Web Service是一種新的Web應用程序分支,它們是自包含、自描述、模塊化的應用,可以在網絡(通常為Web)中被描述、發布、查找以及通過Web來調用。

          Web Service便是基于網絡的、分布式的模塊化組件,它執行特定的任務,遵守具體的技術規范,這些規范使得Web Service能與其他兼容的組件進行互操作。它可以使用標準的互聯網協議,像超文本傳輸協議HTTP和XML,將功能體現在互聯網和企業內部網上。Web Service平臺是一套標準,它定義了應用程序如何在Web上實現互操作性。你可以用你喜歡的任何語言(筆者用的是C#),在你喜歡的任何平臺上寫Web Service。

          Web Service的技術支持

          Web Service平臺需要一套協議來實現分布式應用程序的創建。任何平臺都有它的數據表示方法和類型系統。要實現互操作性,Web Service平臺必須提供一套標準的類型系統,用于溝通不同平臺、編程語言和組件模型中的不同類型系統。目前這些協議有:

          1.XML和XSD

          可擴展的標記語言XML?是Web Service平臺中表示數據的基本格式。除了易于建立和易于分析外,XML主要的優點在于它既與平臺無關,又與廠商無關。XML是由萬維網協會(W3C)創建,W3C制定的XML SchemaXSD?定義了一套標準的數據類型,并給出了一種語言來擴展這套數據類型。

          Web Service平臺是用XSD來作為數據類型系統的。當你用某種語言如 VB.NET或C#?來構造一個Web Service時,為了符合Web Service標準,所有你使用的數據類型都必須被轉換為XSD類型。如想讓它使用在不同平臺和不同軟件的不同組織間傳遞,還需要用某種東西將它包裝起來。這種東西就是一種協議,如 SOAP。

          2.SOAP

          SOAP即簡單對象訪問協議(Simple Object Access Protocol),它是用于交換XML編碼信息的輕量級協議。它有三個主要方面:XML-envelope為描述信息內容和如何處理內容定義了框架,將程序對象編碼成為XML對象的規則,執行遠程過程調用(RPC)的約定。 SOAP可以運行在任何其他傳輸協議上。例如,你可以使用 SMTP,即因特網電子郵件協議來傳遞SOAP消息,這可是很有誘惑力的。在傳輸層之間的頭是不同的,但XML有效負載保持相同。

          Web Service 希望實現不同的系統之間能夠用“軟件-軟件對話”的方式相互調用,打破了軟件應用、網站和各種設備之間的格格不入的狀態,實現“基于Web無縫集成”的目標。

          3.WSDL

          Web Service描述語言WSDL?就是用機器能閱讀的方式提供的一個正式描述文檔而基于XML的語言,用于描述Web Service及其函數、參數和返回值。因為是基于XML的,所以WSDL既是機器可閱讀的,又是人可閱讀的。

          4.UDDI

          UDDI 的目的是為電子商務建立標準;UDDI是一套基于Web的、分布式的、為Web Service提供的、信息注冊中心的實現標準規范,同時也包含一組使企業能將自身提供的Web Service注冊,以使別的企業能夠發現的訪問協議的實現標準。

          5.遠程過程調用RPC與消息傳遞

          Web Service本身其實是在實現應用程序間的通信。我們現在有兩種應用程序通信的方法:RPC遠程過程調用?和消息傳遞。使用RPC的時候,客戶端的概念是調用服務器上的遠程過程,通常方式為實例化一個遠程對象并調用其方法和屬性。RPC系統試圖達到一種位置上的透明性:服務器暴露出遠程對象的接口,而客戶端就好像在本地使用的這些對象的接口一樣,這樣就隱藏了底層的信息,客戶端也就根本不需要知道對象是在哪臺機器上。

          Web Service軟件的支持

          操作系統離不開豐富的應用軟件的支持。同樣,Web Service這項技術只有通過日益廣泛的應用才能體現出其價值,目前比較流行的實現方法是使用.NET 和 Java兩種技術,并且兩種實現方法可以互相操作;如今我們已經可以看到使用微軟、 IBM、SUN、Borland等不同廠商的Web Service構建工具建立的Web Service應用。

          微軟.NET

          微軟的.NET技術應該算是時下最為流行的Web Service 開發技術。首先因為其公司在以前相應的產品就占有相當大的市場份額,以至使新推出的.NET得以有比較穩定的用戶群;其次也是更重要的是 .NET平臺不僅延續了微軟一貫的編程風格,而且還增加了許多支持Web 服務的關鍵性技術,使得.NET在操作的簡單性和執行的穩定性,高效性上達到了一個非常好的結合。

          微軟的Visual Studio.NET便是一個便于 Web 服務的開發工具。微軟的目標是,將其新編程語言??C#作為Web Service的首選語言。雖然C#看起來與Java類似,但是還有一些 Java中沒有的獨特的功能。.NET技術中用于Web Service 開發的主要工具是ASP.NET?從技術上說,ASPasp.net? 提供了一些超出ASP以前版本的優點(例如:代碼和HTML的分離,與腳本語言相比較,對“真正”的編程語言如 C# 的支持)。

          IBM的 WebSphere

          IBM公司是業界第一家能夠提供全面支持Web服務的電子商務基礎設施中間件的公司。通過多年來與 W3C(The World Wide Web Consortium)的共同努力,包括DB2、Lotus、Tivoli 和WebSphere在內的所有IBM軟件都實現了對SOAP、WSDL、UDDI、Linux、XML、J2EE等開放技術和標準的全面支持。  IBM公司的WebSphere 也是比較好的基礎架構軟件開發平臺。WebSphere軟件平臺及開發工具包括 WebSphere Studio Application Developer WSAD? 基于J2EE、XML 和Web服務等開放標準,并具備 IBM 在可靠性、擴展性和安全性上的主要優勢。WebSphere 是 IBM 在 Web Services策略中的核心平臺,它支持所有開發、發布、部署 Web Services應用所必需的開放標準和技術,包括 UDDI,SOAP,J2EE,WSDL,和對 XML 技術集成的增強,這特使得它在全球有很多用戶。

          Borland的JBuilder

          Borland公司在 JBuilder7中,用戶可以用其Borland Web Services Kit for Java和Borland JBuilder MobileSet 3進行更快捷地開發Web Service和無線應用。這樣將使開發者能夠在同一個開發環境中輕松地創建和集成Web Service。今年新推出的JBuidler8 更是針對Web Service開發更提供了方便和高效的方法。

          總之,在Web Service開發上,.NET 和Java都是很好的選擇,盡管兩者現在都有一些需要完善的地方,但是就目前來說,它們還是最好的開發手段和技術。具體選擇哪種開發工具,也是仁者見仁,智者見智的問題。從根本上說,這兩種方法沒有孰優孰劣的問題,只是根據使用者對這兩種方法的掌握程度和對具體語言的偏愛程度來決定。
          posted on 2010-04-27 16:42 Liver 閱讀(238) 評論(0)  編輯  收藏 所屬分類: WebService

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           

          <2010年4月>
          28293031123
          45678910
          11121314151617
          18192021222324
          2526272829301
          2345678

          常用鏈接

          留言簿

          隨筆分類(5)

          隨筆檔案(5)

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 秭归县| 莫力| 梓潼县| 木兰县| 赣州市| 宜川县| 章丘市| 衢州市| 巍山| 新蔡县| 潞城市| 资阳市| 河津市| 左云县| 南平市| 惠州市| 布尔津县| 资溪县| 菏泽市| 娄底市| 蓝山县| 珠海市| 广昌县| 黑河市| 龙游县| 呼图壁县| 朔州市| 城口县| 永城市| 太仆寺旗| 冕宁县| 静安区| 上思县| 青州市| 渭源县| 温宿县| 诏安县| 呼图壁县| 上饶县| 咸丰县| 波密县|