<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    細(xì)心!用心!耐心!

    吾非文人,乃市井一俗人也,讀百卷書,跨江河千里,故申城一游; 一兩滴辛酸,三四年學(xué)業(yè),五六點(diǎn)粗墨,七八筆買賣,九十道人情。

    BlogJava 聯(lián)系 聚合 管理
      1 Posts :: 196 Stories :: 10 Comments :: 0 Trackbacks

    JMS編程模式

    消息形式:

    點(diǎn)對(duì)點(diǎn)為兩個(gè)客戶之間建立消息隊(duì)列,使兩個(gè)客戶端之間通過隊(duì)列實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)的消息傳遞

    注:類似數(shù)據(jù)結(jié)構(gòu)里的隊(duì)列,先進(jìn)先出

    主題消息,在消息中間件上建立一個(gè)主題,沒個(gè)客戶端都可已向這個(gè)主題發(fā)送消息,接受消息

    注:類似廣播的方式

    開發(fā)流程:

     


    使用JMS步驟

    1.創(chuàng)建一個(gè)JNDI上下文

    Context  init initCtx =new InitialContext(env);

    2.查找創(chuàng)建JMS連接使用的工廠類(Connnect Factory)

    對(duì)于主題消息:

    Object tmp=initCtx.lookup(“Connnect Factory”);

    TopicConnectionFactory tcf=( TopicConnectionFactory) tmp;

    對(duì)于點(diǎn)對(duì)點(diǎn)消息:

    Object tmp=initCtx.lookup(“Connnect Factory”);

    QueueConnectionFactory tcf=( QueueConnectionFactory) tmp;

    3.查找JMS的目標(biāo)對(duì)象(Destination)

    對(duì)于主題消息:

    Topic topic=(Topic)iniCtx.lookup(“topic/testTopic”);

    對(duì)于點(diǎn)對(duì)點(diǎn)消息:

    Queue queue (Queue)iniCtx.lookup(“queue /A”);

    4.創(chuàng)建JMS連接(Connection)

    對(duì)于主題消息:

    TopicConnection conn=tcp.createTopicConnection();

    對(duì)于點(diǎn)對(duì)點(diǎn)消息:

    QueueConnection conn=tcp.createQueueConnection ();

    5.創(chuàng)建JMS會(huì)話(session)

    對(duì)于主題消息:

    TopicSession session=conn.createTopicSession(fasle,Session.AUTO_ACKNOWLEDGE);

    對(duì)于點(diǎn)對(duì)點(diǎn)消息:

    QueueSession session= conn.createQueueSession(true,0);

    6.創(chuàng)建消息的生產(chǎn)和消費(fèi)者

    生產(chǎn)者:

    對(duì)于主題消息:

    TopicPublisher publisher=session.createPublisher(topic);

    對(duì)于點(diǎn)對(duì)點(diǎn)消息:

    QueueSender sender = session.createSender (queue);

    消費(fèi)者:

    對(duì)于主題消息:

    TopicSubscriber subscriber=session.createSubscriber (topic);

    對(duì)于點(diǎn)對(duì)點(diǎn)消息:

    QueueReceiver receiver= session.createReceiver (queue);

    7.注冊(cè)消息的監(jiān)聽者

    對(duì)于主題消息:

    TextListener listener=new TextListener();

    subscriber.setMessageListener(listener);

    對(duì)于點(diǎn)對(duì)點(diǎn)消息:

    TextListener listener=new TextListener();

    receiver.setMessageListener(listener);

    8.開始JMS的連接

       conn.start();

    9.發(fā)送和接受消息

    發(fā)送消息:

    對(duì)于主題消息:

    publisher.publish(message);

    對(duì)于點(diǎn)對(duì)點(diǎn)消息:

    sender.send(message);

    接受消息:

    對(duì)于主題消息:

    Message msg= subscriber.receive();

    對(duì)于點(diǎn)對(duì)點(diǎn)消息:

    Message msg= receiver.receive(1000);

    10.停止和關(guān)閉JMS連接

    conn.stop();

    session.close();

    conn.close();

    posted on 2007-05-06 11:43 張金鵬 閱讀(100) 評(píng)論(0)  編輯  收藏

    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 伊人久久五月丁香综合中文亚洲| 成人免费在线看片| 野花香高清视频在线观看免费 | 最近的免费中文字幕视频| 亚洲成年人电影在线观看| 亚洲黄色免费网址| 亚洲AV无码一区二区三区电影 | 亚洲人成网站18禁止久久影院| 三上悠亚电影全集免费| 亚洲精品乱码久久久久66| 51在线视频免费观看视频| 九九免费久久这里有精品23| 久久精品国产亚洲Aⅴ香蕉| 国产高清视频免费在线观看| 亚洲熟女一区二区三区| 亚洲美女免费视频| 久久精品成人免费网站| 成人性做爰aaa片免费看| 亚洲成人午夜电影| 亚洲av乱码一区二区三区香蕉| 国产福利在线观看免费第一福利| 朝桐光亚洲专区在线中文字幕| 亚洲日韩精品无码一区二区三区| 精品国产人成亚洲区| 亚洲人成网站在线观看青青| 100部毛片免费全部播放完整| 久久久久久国产精品免费免费男同| 亚洲校园春色小说| 2019亚洲午夜无码天堂| 亚洲精品无码不卡在线播HE | 亚洲AV色无码乱码在线观看| 亚洲国产成人手机在线观看| 一区二区三区亚洲视频| 毛片免费观看视频| 免费a级毛片大学生免费观看 | 久久亚洲精精品中文字幕| 亚洲成年人啊啊aa在线观看| 两个人的视频高清在线观看免费| 最近2019中文字幕免费直播| 美女视频黄频a免费大全视频| 亚洲无成人网77777|