當前位置:才華齋>IT認證>J2EE>

j2ee技術體系架構

J2EE 閱讀(5.1K)

J2EE是一套全然不同於傳統應用開發的技術架構,包含許多元件,主要可簡化且規範應用系統的開發與部署,進而提高可移植性、安全與再用價值。下面是小編整理的關於j2ee技術體系架構,歡迎大家參考!

j2ee技術體系架構

SOA 是一種分散式的軟體模型。SOA 的主要元件包括 服務、動態發現和 訊息。

服務是能夠通過網路訪問的可呼叫例程。服務公開了一個介面契約,它定義了服務的行為以及接受和返回的訊息。術語 服務常與術語 提供者互換使用,後者專門用於表示提供服務的實體。

介面通常在公共註冊中心或者目錄中釋出,並在那裡按照所提供的不同服務進行分類,就像電話簿黃頁中列出的企業和電話號碼一樣。客戶(服務消費者)能夠根據不同的分類特徵通過動態查詢服務來查詢特定的服務。這個過程被稱為服務的 動態發現。

服務消費者或者客戶通過 訊息來消費服務。因為介面契約是獨立於平臺和語言的,訊息通常用符合 XML 模式的 XML 文件來構造。

  Web 服務作為 SOA

Web 服務建立在開放標準和獨立於平臺的協議的基礎之上。Web 服務通過 HTTP 使用 SOAP(一種基於 XML 的協議),以便在服務提供者和消費者之間進行通訊。服務通過 WSDL(Web Service Definition Language)定義的介面來公開,WSDL 的語義用 XML 定義。UDDI 是一種語言無關的協議,用於和註冊中心進行互動以及查詢服務。所有這些特性都使得 Web 服務成為開發 SOA 應用程式的優秀選擇。

使用 J2EE 1.4 平臺開發 SOA/Web 服務框架

1.4 版的 J2EE 平臺通過新的 JAX-RPC 1.1 API 提供了完整的 Web 服務支援,這種 API 支援基於 servlet 和企業 bean 的服務端點。JAX-RPC 1.1 基於 WSDL 和 SOAP 協議提供了與 Web 服務的互操作性。J2EE 1.4 平臺也支援 Web Services for J2EE 規範(JSR 921),後者定義了 Web 服務的'部署需求並利用了 JAX-RPC 程式設計模型。除了幾種 Web 服務 API 之外,J2EE 1.4 平臺還聲稱支援 WS-I Basic Profile 1.0。WS-I Basic Profile 標準讓 Web 服務克服了不同程式語言、作業系統和供應商平臺之間的障礙,從而使多種應用程式之間能夠互動(關於 WS-I 的更多資訊,請參閱 參考資料部分。)

在 J2EE 1.4 下,Web 服務客戶可以通過兩種方式訪問 J2EE 應用程式。客戶可以訪問用 JAX-RPC API 建立的 Web 服務;在幕後 JAX-RPC 使用 servlet 來實現 Web 服務。Web 服務客戶也可以通過 bean 的服務端點介面訪問無狀態會話 bean。Web 服務客戶不能訪問其他型別的企業 beans。第二種選擇——公開無狀態 EJB 元件作為 Web 服務——有很多優勢:

利用現有的業務邏輯和流程:在許多企業中,現有的業務邏輯可能已經使用 EJB 元件編寫,通過 Web 服務公開它可能是實現從外界訪問這些服務的最佳選擇。EJB 端點是一種很好的選擇,因為它使業務邏輯和端點位於同一層上。

併發支援:作為無狀態會話 bean 實現的 EJB 服務端點不必擔心多執行緒訪問,因為 EJB 容器必須序列化對無狀態會話 bean 任何特定例項的請求。

對服務的安全訪問:企業 beans 允許在部署描述符中宣告不同方法級別的安全特性。方法級別角色被對映到實際的主體域(principal domain)。使用 EJB 元件作為 Web 服務端點,把這種方法級別的安全性也帶給了 Web 服務客戶。

事務問題:EJB 服務端點在部署描述符規定的事務上下文中執行。容器處理事務,因此 bean 開發人員不需要編寫事務處理程式碼。

可伸縮性:幾乎所有 EJB 容器都提供了對無狀態會話 bean 群集的支援。因此當負載增加時,可以向群集中增加機器,Web 服務請求可以定向到這些不同的伺服器。通過把 Web 服務模型化為 EJB 端點,可以使服務具有可伸縮性,並增強了可靠性。

池與資源管理:EJB 容器提供了無狀態會話 bean 池。這改進了資源利用和記憶體管理。通過把 Web 服務模型化為 EJB 端點,這種特性很容易擴充套件,使 Web 服務能夠有效地響應多個客戶請求。