拾貝殼

          走過的路
          隨筆 - 39, 文章 - 1, 評論 - 14, 引用 - 0
          數據加載中……

          JMS初讀

          33.2 基本的jms api概念
          ?? 33.2.1 jms api體系結構
          ???? jms應用程序組成部分:
          ????a. jms提供者--------j2ee平臺.
          ??? b.jms客戶端--------需要用戶完成的應用程序.
          ??? c.消息----在客戶端之間傳遞信息的對象
          ?? d.管理的對象----連接工廠和目的地
          ?33.2.2 消息域
          ???分為"點到點消息傳遞域"和"發表/訂閱小心傳遞域"
          ?33.2.3 消費消息
          ???兩種方式:同步和異步.同步直接用receive方法提取消息.異步需要可湖段為消費者注冊一個見聽器.通過調用見聽器的onMessage方法來分發消息.
          33.3 jms api編程模型
          ? 33.3.1 管理的對象
          ?? a.連接工廠
          ??? 通常是執行jndi查找獲得連接工廠.eg:
          ? Context ctx= new InitialContext();
          ? ConnectionFactory cf=(ConnectionFactory )?ctx.lookup("jms/QueueConnectionFactory");
          ConnectionFactory cf=(ConnectionFactory )?ctx.lookup("jms/TopicConnectionFactory");
          ?b.目的地
          ?? 在ptp中,目的地是"隊列".在發表/訂閱中,目的地是"主題".
          ? eg:
          Destination mydest=(Topic)ctx.lookup("jms/mytopic");
          33.3.2 連接
          ?連接由連接工廠來創建.eg:
          Connection conn=ConnectionFactory .createConnection();
          33.3.3 會話
          會話 由 Connection來創建
          Session session=Connection.createSession(false,Session.AUTO_ACKOWLEDGE);
          事務性的會話
          Session session=Connection.createSession(true,0);
          33.3.4 消息生產者
          由session 來創建,實現MessageProducer接口.
          ?? MessageProducer mp=session.createProducer(myQueue);
          發送動作
          mp.send(message);
          33.3.5 消息消費者
          ?由session創建,實現MessageConsumer接口.
          eg:
          MessageConsumer mc=session.createConsumer(myQueue);
          bwt:
          利用session.createDurableSubscriber可以創建長期的訂閱者.
          ? ========獲得消息==
          同步方式.
          connection.start();
          Message m=consumer.receive();
          connection.start();
          Message m=consumer.receive(1000); //time out afer a second
          異步方式.
          構造一個消息艦艇器,用setMessageListener方法向具體的MessageConsumer中注冊.eg:
          ? Listener myListener= new Listener ();
          consumer.setMessageListener (myListener );
          33.3.6 消息
          分為消息頭,消息屬性和消息體,只有消息頭是必須的.
          消息頭存放了可護短和提供者用來識別和路由消息的值.
          常見的消息體的格式(消息類型)有5種.
          ?
          ?

          posted on 2006-05-31 22:25 binge 閱讀(428) 評論(0)  編輯  收藏 所屬分類: J2EE

          主站蜘蛛池模板: 吉木乃县| 神农架林区| 五指山市| 甘孜| 英吉沙县| 许昌市| 青川县| 新闻| 东海县| 京山县| 嵩明县| 丽水市| 仙居县| 西乌珠穆沁旗| 浦县| 乐至县| 济阳县| 福建省| 靖边县| 宜宾县| 北票市| 黎平县| 珲春市| 米脂县| 巴中市| 鄂伦春自治旗| 绥德县| 都安| 包头市| 西林县| 裕民县| 延边| 邯郸县| 黔东| 阳曲县| 秀山| 贵阳市| 西平县| 繁昌县| 北辰区| 吴忠市|