什麼是EJB

學習EJB能夠加深對J2EE平臺的認識。java

百科定義EJB:


被稱爲java企業bean,服務器端組件,核心應用是部署分佈式應用程序。用它部署的系統不限定平臺。實際上ejb是一種產品,描述了應用組件要解決的標準web

 

標準:


  • 可擴展 (Scalable)
  • 分佈式 (Distributed)
  • 事務處理(Transactional)
  • 數據存儲(Persistent)
  • 安全性 (Secure)

 

 

J2EE的體系結構

 


 

其中EJB屬於J2EE體系結構中的業務邏輯部分安全


 

EJB構成

 



 

EJB容器中有三種類也稱爲組件,分別是服務器


Session bean(邏輯)jsp

EntityBean(數據)分佈式

messageDrivenbean(消息)學習

 

上圖中能夠看到spa


   1 組件是在容器中的。容器提供了組件的環境並對其進行管理。對象

   2  調用組件的被稱爲ejb客戶端。客戶端能夠運行在web容器中。如jspservletjndiweb service接口

 


實現邏輯


實現邏輯組件中有各類抽象的方式。這樣經過客戶端的調用實現了業務的封裝

 


實現分佈式

 

首先要認識到RMI技術(遠程調用),EJB的基礎是RMI,經過RMIJ2EEEJB組件建立爲遠程對象,EJB雖然用到了RMI,可是隻須要定義遠程接口無需實現,這樣就將RMI技術細節屏蔽了。

這種將須要特定執行的類,放在Ejb中並打包發送到服務器上,,客戶端經過RMI技術到服務器上進行調用,這樣就實現了分佈式調用。

 

所謂的服務器羣

 

既然已經知道了,RMI是將各類任務與功能的類放到不一樣的服務器上,而後經過各個服務器間創建的調用規則實現分佈式的運算,也就明白EJB所謂的"服務羣集"的概念。就是將原來在一個計算機上運算的幾個類,分別放到其餘計算機上去運行,以便分擔運行這幾個類所須要佔用的CPU和內存資源。同時,也能夠將不一樣的軟件功能模塊放到不一樣的服務器上,當須要修改某些功能的時候直接修改這些服務器上的類就好了,修改之後全部客戶端的軟件都被修改了

 

一個簡單的分佈式羣圖

 


 

 

小結:


EJB實現原理:就是把原來放到客戶端實現的代碼放到服務器端,並依靠RMI進行通訊。

服務器集羣:就是經過RMI的通訊,鏈接不一樣功能模塊的服務器,以實現一個完整的功能。 

EJB規範定義了EJB組件在什麼時候如何與它們的容器進行交互做用。容器負責提供公用的服務,例如目錄服務、事務管理、安全性、資源緩衝池以及容錯性。但這裏值得注意的是,EJB並非實現J2EE的惟一途徑。

相關文章
相關標籤/搜索