• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            大龍的博客

            常用鏈接

            統計

            最新評論

            Java中對WebService的支持

            SOA(Service-Oriented Architecture) 面 向服務架構是一種思想,它將應用程序的不同功能單元單元更好的集成。目前來說,WebService是SOA的一種較好的實現方式,WebService 采用HTTP作為傳輸協議,SOAP(Simple Object Access Protocol)作為傳輸消息的格式。但WebService并不是完全符合SOA的概念,因為SOAP協議是WebService的特有協議,并未符 合SOA的傳輸協議透明化的要求。SOAP是一種應用協議,早期應用于RPC的實現,傳輸協議可以依賴于HTTP、SMTP等。通常采用SOA的系統叫做 企業服務總線(ESB),并且可以擴展。

            Java中有三種WebService規范:JAX-WS(JAX-RPC)、JAXM&SAAJ、JAX-RS

            1. JAX-WS

            JAX-WS(Java API For XML-WebService),JDK1.6 自帶的版本為JAX-WS2.1,其底層支持為JAXB。早期的基于SOAP的JAVA的Web服務規范JAX-RPC(Java API For XML-Remote Procedure Call)目前已經被JAX-WS規范取代,JAX-WS是JAX-RPC的演進版本,但JAX-WS并不完全向后兼容JAX-RPC,二者最大的區別就 是RPC/encoded樣式的WSDL,JAX-WS已經不提供這種支持。JAX-RPC的API從JAVA EE5開始已經移除,如果你使用J2EE1.4,其API位于javax.xml.rpc.*包。JAX-WS(JSR 224)規范的API位于javax.xml.ws.*包,其中大部分都是注解,提供API操作Web服務(通常在客戶端使用的較多,由于客戶端可以借助 SDK生成,因此這個包中的API我們較少會直接使用)。WS-MetaData(JSR 181)是JAX-WS的依賴規范,其API位于javax.jws.*包,使用注解配置公開的Web服務的相關信息和配置SOAP消息的相關信息。

            2. JAXM&SAAJ

            JAXM(JAVA API For XML Message) 主 要定義了包含了發送和接收消息所需的API,相當于Web服務的服務器端,其API位于javax.messaging.*包,它是JAVA EE的可選包,因此SAAJ(SOAP With Attachment API For Java,JSR 67)是與JAXM搭配用的API,為構建SOAP包和解析SOAP包提供了重要的支持,支持附件傳輸,它在服務器端、客戶端都需要使用。這里還要提到的 是SAAJ規范,其API位于javax.xml.soap.*包。JAXM&SAAJ與JAX-WS都是基于SOAP的Web服務,相比之下 JAXM&SAAJ暴漏了SOAP更多的底層細節,編碼比較麻煩,而JAX-WS更加抽象,隱藏了更多的細節,更加面向對象,實現起來你基本上不 需要關心SOAP的任何細節。那么如果 你想控制SOAP消息的更多細節,可以使用JAXM&SAAJ。

            3. JAX-RS

            JAX-RS(Java API For RESTful Web Services) 是 JAVA針對REST(Representation State Transfer)風格制定的一套Web服務規范,由于推出的較晚,該規范(JSR 311)并未隨JDK1.6一起發行,你需要到JCP上單獨下載JAX-RS規范的接口,其API位于javax.ws.rs.*包。

             Reftful足夠簡單主要有以下一些特點:

            一、Resource identification through URI:一個Rest服務向外暴露一個服務,通過唯一一個URI進行標注,

            二、Uniform interface: Rest服務主要通過四個關鍵字來標識每一次請求過來的操作,PUT, GET, POST, and DELETE.PUT:創建一個新的資源,GET:得到一個資源,POST:更新操作,DELETE:執行刪除動作。

            三、Self-descriptive messages: 信息的自我描述,在Rest服務交互中,server/client之間可以通過多種格式進行交互,如:HTML, XML, plain text, PDF, JPEG, JSON, and others.

            四、Stateful interactions through hyperlinks: 在 server/client的交互過程中,可以實現有狀態的交互,其實在Rest中,對資源的一次請求是一種無狀態的方式,而在Rest中,一種有狀態的 交互是通過明確的state transfer來進行的,主要的實現方式可通過URI的重寫、cookies方式、隱藏域等實現。而且狀態可以嵌入到相應頭中來處理。

            posted on 2012-06-22 16:24 大龍 閱讀(434) 評論(0)  編輯 收藏 引用

            国产精品久久久久aaaa| 亚洲精品高清一二区久久| 97久久精品人人澡人人爽| 久久久久亚洲精品日久生情| 91精品国产综合久久四虎久久无码一级 | 7国产欧美日韩综合天堂中文久久久久| 久久综合九色综合欧美狠狠| 伊人久久综合无码成人网| 无码任你躁久久久久久老妇| 久久亚洲国产欧洲精品一| 亚洲欧洲精品成人久久奇米网| 久久精品国产亚洲av水果派| 亚洲中文久久精品无码| 久久精品女人天堂AV麻| 久久人人爽人人爽人人片AV麻豆| 精品久久久久久国产91| 91精品国产高清91久久久久久| 性欧美大战久久久久久久| 国产巨作麻豆欧美亚洲综合久久| 久久99国产精品久久99| 亚洲午夜久久久久久久久久| 亚洲伊人久久综合影院| 中文字幕一区二区三区久久网站| 99久久国语露脸精品国产| 久久亚洲精品成人av无码网站| 国产高潮国产高潮久久久| 久久综合狠狠综合久久激情 | 国产成人精品免费久久久久| 久久中文字幕人妻丝袜| 久久精品久久久久观看99水蜜桃| 久久国产成人精品国产成人亚洲| 亚洲精品tv久久久久| 久久精品中文字幕第23页| 国产成人久久777777| 久久99精品九九九久久婷婷| 国产激情久久久久影院老熟女| 精品久久久久久无码专区 | 亚洲成人精品久久| 一级做a爱片久久毛片| 国产精品一区二区久久精品无码 | 久久精品国产亚洲精品2020|