【EJB體系結構】

我是太陽啦啦啦發表於2017-04-16

前言:

小編學習Java已經一段時間了,今天小編來總結關於EJB的基本知識,初次學習,只是作為一個知識的總結,後期不斷深化的學習,希望帶給讀者們一些幫助。

核心:

概念:

企業級Javabean(EJB),是sun的JavaEE伺服器端元件模型,設計目標與核心應用是部署分散式應用程式。簡單來說就是把已經編寫好的程式打包在伺服器上執行。EJB是一種描述了構建應用元件要解決的標準。推薦部落格:JB到底是什麼,真的那麼神奇嗎??

體系結構:

  • 描述元件的基本特徵
  • 理解EJB角色和職責
  • 描述主要的EJB 型別和用途

在這裡,說明兩個概念:元件,元件是提供業務服務的獨立功能單元,以操作、屬性和事件的形式提供訪問的介面。元件可以使用任何一門語言開發,如Java,C++或Visual Basic.頻繁應用於各行業領域的應用框架中。元件模型,如EJB模型,將通訊標準化並可以預先構建模組化的元件。

另一個概念為自包含:一個元件應該只包含其服務所必需的程式碼。自包含指的是:為安裝的元件提供執行環境,通過執行環境自動增加框架服務,大量減少開發人員編寫的程式碼量。

型別:

  • 無狀態會話bean
    • 提供獨立的服務
    • 不維持客戶端的狀態
    • 可互換(呼叫相同型別的不同例項可得到相同的結果)
    • 是同步的
    • 只在記憶體中儲存
    • EJB伺服器崩潰後不再儲存

舉例子:檢視列車時刻的EJB

查詢話費清單的EJB

為信用卡授權的EJB

  • 有狀態會話bean
    • 提供會話的互動
    • 儲存客戶端的行為狀態
    • 不可互換(每個例項只關聯一個單獨的客戶)
    • 是同步的
    • 在記憶體中維持
    • EJB伺服器崩潰後不再儲存,除非配置failover(故障恢復)

舉例子:管理線上測試的EJB

網站上管理購物車的EJB

  • 實體bean
    • 是永續性資料在記憶體中的體系那
    • 應用伺服器崩潰後能夠恢復
    • 可以支援來自多個客戶的併發訪問
    • 是同步的

舉例子:訂單管理系統中的EJB代表一個客戶

在圖書館管理系統中一個EJB代表一本書

在人力資源系統中,一個EJB代表一個員工的檔案

  • 訊息驅動bean

是在訊息之間不維持狀態的非同步元件,是JMS訊息的使用者,客戶不能直接和MDB互動。

舉例子:處理servlet發回的網站反饋資訊的EJB

列印從訂單佇列到倉庫印表機的訂單EJB

基礎

RMI:遠端方法呼叫,

物件使用stubs和skeletons呼叫遠端物件的方法

weblogic.rmic根據Remote Object產生對應的RMI Stub和RMI Skeleton

EJB介面

  • Home介面
    • HomeStub
    • HomeSkeleton
  • Remote介面
    • RemoteStub
    • RemoteSkeleton

如果客戶能夠本地訪問EJB,那就可以不必使用RMI通訊。

總結:

EJB的學習還在進行中,歡迎讀者們與我來交流,感謝大家的閱讀。

相關文章