EJB的理解
百科定義EJB:
被稱為Java企業bean,服務器端組件,核心應用是部署分布式應用程序。用它部署的系統不限定平臺。實際上ejb是一種產品,描述了應用組件要解決的標準
?
標準:
- 可擴展 (Scalable)
- 分布式 (Distributed)
- 事務處理(Transactional)
- 數據存儲(Persistent)
- 安全性 (Secure)
?
?
J2EE的體系結構
?
?
其中EJB屬于J2EE體系結構中的業務邏輯部分
?
EJB構成
?
?
EJB容器中有三種類也稱為組件,分別是
Session bean(邏輯)
EntityBean(數據)
messageDrivenbean(消息)
?
上圖中可以看到
? ?1 組件是在容器中的。容器提供了組件的環境并對其進行管理。
? ?2 ?調用組件的被稱為ejb客戶端??蛻舳丝梢赃\行在web容器中。如jsp,servlet,jndi,web service等
?
實現邏輯
實現邏輯組件中有各種抽象的方式。這樣通過客戶端的調用實現了業務的封裝
?
實現分布式
?
首先要認識到RMI技術(遠程調用),EJB的基礎是RMI,通過RMI,J2EE將EJB組件創建為遠程對象,EJB雖然用到了RMI,但是只需要定義遠程接口無需實現,這樣就將RMI技術細節屏蔽了。
這種將需要特定執行的類,放在Ejb中并打包發送到服務器上,,客戶端通過RMI技術到服務器上進行調用,這樣就實現了分布式調用。
?
所謂的服務器群
?
既然已經知道了,RMI是將各種任務與功能的類放到不同的服務器上,然后通過各個服務器間建立的調用規則實現分布式的運算,也就明白EJB所謂的"服務群集"的概念。就是將原來在一個計算機上運算的幾個類,分別放到其他計算機上去運行,以便分擔運行這幾個類所需要占用的CPU和內存資源。同時,也可以將不同的軟件功能模塊放到不同的服務器上,當需要修改某些功能的時候直接修改這些服務器上的類就行了,修改以后所有客戶端的軟件都被修改了
?
一個簡單的分布式群圖
?
?
?
小結:
變成大白話就是,"把你編寫的軟件中那些需要執行制定的任務的類,不放到客戶端軟件上了,而是給他打成包放到一個服務器上了"。
EJB實現原理:就是把原來放到客戶端實現的代碼放到服務器端,并依靠RMI進行通信。
服務器集群:就是通過RMI的通信,連接不同功能模塊的服務器,以實現一個完整的功能。?
EJB規范定義了EJB組件在何時如何與它們的容器進行交互作用。容器負責提供公用的服務,例如目錄服務、事務管理、安全性、資源緩沖池以及容錯性。但這里值得注意的是,EJB并不是實現J2EE的唯一途徑。
原作:http://blog.csdn.net/han_yankun2009/article/details/22784559
總結
- 上一篇: 木马的常见欺骗方式
- 下一篇: meta分析森林图解读,实例讲解教你快速