EJB是基於哪些技術實現的?並說出SessionBean和EntityBean的區別,StatefulBean和StatelessBean的區別。

EJB包括Session BeanEntity BeanMessage Driven Bean,基於JNDIRMIJAT等技術實現。

SessionBeanJ2EE應用程序中被用來完成一些服務器端的業務操作,例如訪問數據庫、調用其他EJB組件。EntityBean被用來代表應用系統中用到的數據。

對於客戶機,SessionBean是一種非持久性對象,它實現某些在服務器上運行的業務邏輯。

對於客戶機,EntityBean是一種持久性對象,它代表一個存儲在持久性存儲器中的實體的對象視圖,或是一個由現有企業應用程序實現的實體。

Session Bean 還可以再細分爲 Stateful Session Bean Stateless Session Bean ,這兩種的 Session Bean都可以將系統邏輯放在 method之中執行,不同的是 Stateful Session Bean 可以記錄呼叫者的狀態,因此通常來說,一個使用者會有一個相對應的 Stateful Session Bean 的實體。Stateless SessionBean 雖然也是邏輯組件,但是他卻不負責記錄使用者狀態,也就是說當使用者呼叫 StatelessSession Bean 的時候,EJB Container 並不會找尋特定的 Stateless Session Bean 的實體來執行這個 method。換言之,很可能數個使用者在執行某個 Stateless Session Bean  methods 時,會是同一個 Bean  Instance 在執行。從內存方面來看, Stateful Session Bean  Stateless SessionBean 比較, Stateful Session Bean 會消耗 J2EE Server 較多的內存,然而Stateful Session Bean 的優勢卻在於他可以維持使用者的狀態。

發佈了26 篇原創文章 · 獲贊 4 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章