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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

EJB学习一

發布時間:2025/3/17 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 EJB学习一 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
最近在看EJB,概述一下基本的概念: EJB是用來創建分布式、服務器端基于java的企業應用組件的模型,是java服務器端服務框架的規范,其最大的用處是部署分布式應用程序。 在J2EE里,Enterprise Java Beans(EJB)稱為Java 企業Bean,是Java的核心代碼,分別是會話Bean(Session Bean),實體Bean(Entity Bean)和消息驅動Bean(MessageDriven Bean)。?
??????????一?.Session Bean用于實現業務邏輯,它可以是有狀態的,也可以是無狀態的。每當客戶端請求時,容器就會選擇一個Session Bean來為客戶端服務。Session Bean可以直接訪問數據庫,但更多時候,它會通過Entity Bean實現數據訪問。 Stateful Session Bean:每次產生一個新的會話,能區分不同的會話。 Stateless Session Bean : 服務器端是同一個對象,為單例。 本地(Local):客戶端與其調用的EJB對象在同一個JVM進程中,數據直接用傳址的方式傳輸。 遠程(Remote):客戶端與其調用的EJB對象不在同一個JVM進程中,傳值,需要將參數序列化。 Webservice :Webservice 客戶端可以訪問無狀態會話bean的接口
二.Entity Bean是域模型對象,用于實現O/R映射,負責將數據庫中的表記錄映射為內存中的Entity對象,事實上,創建一個Entity Bean對象相當于新建一條記錄,刪除一個Entity Bean會同時從數據庫中刪除對應記錄,修改一個Entity Bean時,容器會自動將Entity Bean的狀態和數據庫同步。
三.MessageDriven Bean是EJB2.0中引入的新的企業Bean,它基于JMS消息,只能接收客戶端發送的JMS消息然后處理。MDB實際上是一個異步的無狀態Session Bean,客戶端調用MDB后無需等待,立刻返回,MDB將異步處理客戶請求。這適合于需要異步處理請求的場合,比如訂單處理,這樣就能避免客戶端長時間的等待一個方法調用直到返回結果。 JMSJava的消息服務,JMS的客戶端之間可以通過JMS服務進行異步的消息傳輸。JMS支持兩種消息模型:Point-to-PointP2P)和Publish/SubscribePub/Sub),即點對點發布訂閱模型。 點對點:P2P模型中,有下列概念:消息隊列(Queue)、發送者(Sender)、接收者(Receiver)。每個消息都被發送到一個特定的隊列,接收者從隊列中獲取消息。隊列保留著消息,直到它們被消費或超時。 l?????? 每個消息只有一個消費者(Consumer)(即一旦被消費,消息就不再在消息隊列中) l?????? 發送者和接收者之間在時間上沒有依賴性,也就是說當發送者發送了消息之后,不管接收者有沒有正在運行,它不會影響到消息被發送到隊列。 l?????? 接收者在成功接收消息之后需向隊列應答成功 如果你希望發送的每個消息都應該被成功處理的話,那么你需要P2P模型。 ????????? 發布訂閱:Pub/Sub模型中,有下列概念: 主題(Topic)、發布者(Publisher)、訂閱者(Subscriber)。客戶端將消息發送到主題。多個發布者將消息發送到Topic,系統將這些消息傳遞給多個訂閱者。 l?????? 每個消息可以有多個消費者 l?????? 發布者和訂閱者之間有時間上的依賴性。針對某個主題(Topic)的訂閱者,它必須創建一個訂閱之后,才能消費發布者的消息,而且,為了消費消息,訂閱者必須保持運行的狀態。 當然,為了緩和這種嚴格的時間相關性,JMS允許訂閱者創建一個可持久化的訂閱。這樣,即使訂閱者沒有被激活(運行),它也能接收到發布者的消息。 ?????? 如果你希望發送的消息可以不被做任何處理、或者被一個消費者處理、或者可以被多個消費者處理的話,那么可以采用Pub/Sub模型。 消息的消費:JMS中,消息的產生和消費是異步的。對于消費來說,JMS的消費者可以通過兩種方式來消費消息。 l?????? 同步 訂閱者或接收者調用receive方法來接收消息,receive方法在能夠接收到消息之前(或超時之前)將一直阻塞。 l?????? 異步 訂閱者或接收者可以注冊為一個消息監聽器。當消息到達之后,系統自動調用監聽器的onMessage方法。 ????對客戶端來說,message-driven bean就是異步消息的消費者。當消息到達之后,由容器負責調用MDB。客戶端發送消息到destinationMDB作為一個MessageListener接收消息。
?

轉載于:https://blog.51cto.com/gracehopper2000/158660

總結

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

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