拾貝殼

          走過的路
          隨筆 - 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 閱讀(430) 評論(0)  編輯  收藏 所屬分類: J2EE

          主站蜘蛛池模板: 德昌县| 博白县| 洛南县| 界首市| 湖南省| 寻乌县| 乐东| 尉氏县| 榆中县| 健康| 清远市| 井陉县| 新泰市| 三穗县| 囊谦县| 乌什县| 慈溪市| 林甸县| 武宁县| 霍州市| 桐乡市| 老河口市| 井冈山市| 罗田县| 鹤壁市| 集安市| 五常市| 花莲县| 前郭尔| 防城港市| 开封县| 永清县| 雷州市| 忻州市| 电白县| 陕西省| 苏尼特左旗| 石屏县| 麦盖提县| 孟津县| 原阳县|