日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

什么是EJB?

發布時間:2023/12/14 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 什么是EJB? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

EJB 構件用于封裝業務邏輯,使開發人員無須再擔心數據訪問、事務處理支持、安全性、高速緩存和迸發等瑣碎任務的編程。在 EJB 規范中,它們由 EJB 容器負責。EJB 包含接口和類。客戶端通過 EJB 的本地接口和遠程接口訪問 EJB 方法。本地接口提供的方法可用于生成、刪除和查找 EJB,遠程接口則提供業務方法。部署時,容器從這些接口生成類,這些類使客戶端可以訪問、生成、刪除、查找和調用 EJB 上的業務方法。EJB 類為業務方法、生成方法和查找方法提供實施,如果 Bean 管理自己的存儲,還得提供生成生命周期方法的實施。
EJB 共有三種類型:EntityBean(實體 Bean)、Session Bean(會話 Bean)和 Message Driven Bean(消息驅動 Bean),下面分別說明。
(1)實體 Bean。實體 Bean 表示數據庫中的數據及作用于數據的方法。在關系型數據庫中,表中的每一行就是一個 Bean 的實例。實體 Bean 是具有持久性的事務處理型 EJB,只要數據存在于數據庫中,實體 Bean 就存在。
用容器管理的持久性訪問關系數據庫的 EJB,不需要為數據庫訪問使用任何 JDBC API,因為容器可以負責完成這項任務。但是,如果使用 Bean 管理的持久性或想訪問關系數
據庫以外的企業信息系統,就需要提供相應的程序代碼才能完成。但是如果 EJB 使用 Bean 管理的持久性訪問數據庫,用戶必須借助于 JDBC API 實施 Bean 生命周期方法,這樣才能加載和保存數據,并保持運行和持久數據庫存儲之間的一致性。
(2)會話 Bean。會話 Bean 代表與客戶間的短暫對話。在執行數據庫讀寫時,會話 Bean 可以請求 JDBC 調用,也可以使用實體 Bean 執行調用,這時會話 Bean 是實體 Bean 的客戶端。會話 Bean 的字段中包含對話的狀態,如果服務器或客戶端出現故障,會話 Bean 將消失。
會話 Bean 可以有狀態,也可以無狀態。有狀態會話 Bean 包含客戶端方的對話狀態,對話狀態是會話 Bean 實例的字段值加上可以從會話 Bean 字段閱讀的所有對象。有狀態的會話 Bean 不表示持久數據庫中的數據,但能夠以客戶端的名義訪問和更新數據。
無狀態會話 Bean 沒有客戶端的任何狀態信息。它們一般不提供保留任何狀態的服務器行為。無狀態會話 Bean 需要的系統資源較少。提供通用服務或表示共享數據視圖的業務對象適合作為無狀態的會話 Bean。
(3)消息驅動 Bean。EJB2.0 規范中的消息驅動 Bean 能處理從 JMS 消息隊列接收到的異步消息。JMS 將消息路由到消息驅動 Bean,由消息驅動 Bean 從池中選擇某個實例處理消息。
消息驅動 Bean 在 EJB 容器中管理。由于它們不是由用戶的應用直接調用的,因此不能借助 EJB 本地接口從應用進行訪問。但是,用戶的應用可以將消息發送到 Bean 所監聽的 JMS 隊列中,以此來實例化消息驅動 Bean。

總結

以上是生活随笔為你收集整理的什么是EJB?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。