国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

使用消息驅(qū)動(dòng)Beans(1)

2019-11-18 12:28:31
字體:
供稿:網(wǎng)友

  EJB 2.0消息驅(qū)動(dòng)Beans開發(fā)消息驅(qū)動(dòng)Beans和JMS
  這次我們要討論的話題是EJB2.0消息驅(qū)動(dòng)Beans。 我將結(jié)合JMS的知識(shí)來演示一個(gè)具體的實(shí)例。文章所有的代碼都可以在支持消息Beans的EJB服務(wù)上運(yùn)行(Ejb2.0容器);另外你還需要一個(gè)支持JMS的消息服務(wù)器來控制消息隊(duì)列。本文假設(shè)你了解企業(yè)級(jí)javaBeans的知識(shí)。在這篇文章中我們將創(chuàng)建一個(gè)郵件消息隊(duì)列系統(tǒng)。這個(gè)系統(tǒng)包括以下幾個(gè)部分:
  
  JMS Servser:一個(gè)JMS服務(wù)器,它將保存我們的郵件系統(tǒng)的消息隊(duì)列。
  JMS Queue: JMS隊(duì)列,它將保存來自客戶端的JMS消息。在我們的例子中,這個(gè)消息是一個(gè)映射消息(MapMessage),他答應(yīng)我們存儲(chǔ)有關(guān)被發(fā)出的郵件的"鍵/值"對(duì)信息。
  Email Message Client:一個(gè)Email消息客戶端,它將創(chuàng)建一個(gè)JMS消息然后把消息發(fā)送到JMS隊(duì)列中。這個(gè)消息中包含了將要發(fā)送的郵件信息。
  Email Message Drive Bean:一個(gè)Email消息驅(qū)動(dòng)Bean負(fù)責(zé)接收J(rèn)MS映射消息并把它發(fā)送出去。
  http://www.matrix.org.cn/upload/article/a200311495538.gif<;/IMG>
  
  JMS 的結(jié)構(gòu)在我們講述消息驅(qū)動(dòng)Beans之前,讓我們先來談?wù)凧MS(Java消息服務(wù))。我們知道現(xiàn)在有很多消息系統(tǒng),每一個(gè)都有他們自己的API,這些消息系統(tǒng)提供了事件交換和數(shù)據(jù)異步的服務(wù)。作為一個(gè)程序員,我可以給消息服務(wù)器發(fā)送一些信息然后繼續(xù)工作,而不必等待來自系統(tǒng)的響應(yīng)。JMS API描述了一個(gè)標(biāo)準(zhǔn)的方法來訪問幾乎所有的消息系統(tǒng),就像JDBC答應(yīng)我們使用相同的API訪問Oralce,Sybase和SQL Server 一樣。 如同可以調(diào)用異步服務(wù)那樣,我們從中獲得額外的好處是程序之間有一個(gè)寬松的耦合,發(fā)送請(qǐng)求的代碼和響應(yīng)請(qǐng)求的代碼是分離的。不同的客戶端把消息發(fā)送到同一個(gè)指定的目的地;然后,接收者(Receiver)從目的地分離出消息并顯示出來。下面讓我們快速的了解一些JMS API的基本概念:消息映射域
  
  JMS消息消息映射域
  消息系統(tǒng)有幾種運(yùn)行模式。JMS API 提供了不同的域,他對(duì)應(yīng)不同的模式。一個(gè)JMS提供者(PRovider)一個(gè)或多個(gè)域。兩個(gè)、多個(gè)公共域是點(diǎn)對(duì)點(diǎn)和發(fā)布/訂約。這兩個(gè)域有下面的概念:Destination:對(duì)象客戶端指定消息發(fā)送和接受的目的地ProdUCer:一個(gè)客戶端發(fā)送一個(gè)消息到一個(gè)目的地Consumer:一個(gè)客戶端從目的地接受消息點(diǎn)對(duì)點(diǎn)(PTP)一個(gè)點(diǎn)對(duì)點(diǎn)應(yīng)用有下面幾個(gè)特征:
  一個(gè)PTP提供者是一個(gè)發(fā)送者一個(gè)PTP消費(fèi)者是一個(gè)接收者一個(gè)PTP目標(biāo)是一個(gè)隊(duì)列一個(gè)消息只能被一個(gè)接收者消費(fèi)
  發(fā)布/訂閱(pub/sub)一個(gè)pub/sub應(yīng)用有以下特征:A pub/sub producer is publisherA pub/sub consumer is a subscriber
  A pub/sub destination is a topic
  A message may have multiple subscribers
  
  一個(gè)pub/sub提供者是一個(gè)發(fā)布者一個(gè)pub/sub消費(fèi)者是一個(gè)訂閱者一個(gè)pub/sub目標(biāo)是一個(gè)主題一個(gè)消息可以有多個(gè)訂閱者。
  比如,一個(gè)郵件通信系統(tǒng)可以使用發(fā)布/訂閱模式。每一個(gè)對(duì)郵件通信感愛好的人都可以成為一個(gè)訂閱者,當(dāng)一個(gè)新的消息被發(fā)布后,這個(gè)消息會(huì)發(fā)送給每一個(gè)訂閱者。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 沙湾县| 青海省| 尤溪县| 淮滨县| 宁陕县| 长子县| 都兰县| 江川县| 大安市| 若尔盖县| 郯城县| 余庆县| 永兴县| 江阴市| 嘉祥县| 平乐县| 会理县| 桓台县| 和田县| 和静县| 酒泉市| 英山县| 山西省| 白玉县| 肃宁县| 双柏县| 榆林市| 昌黎县| 绥宁县| 乌什县| 麟游县| 迭部县| 韶山市| 高要市| 小金县| 枣庄市| 鹿邑县| 鹿邑县| 远安县| 梓潼县| 莎车县|