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

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

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

    隨筆-88  評論-77  文章-48  trackbacks-0

    package com.zte.jms;

    import javax.jms.JMSException;
    import javax.jms.Message;
    import javax.jms.MessageListener;
    import javax.jms.Queue;
    import javax.jms.QueueConnection;
    import javax.jms.QueueConnectionFactory;
    import javax.jms.QueueReceiver;
    import javax.jms.QueueSender;
    import javax.jms.QueueSession;
    import javax.jms.TextMessage;
    import javax.naming.InitialContext;
    import javax.naming.NamingException;

    import EDU.oswego.cs.dl.util.concurrent.CountDown;

    /**
    ?* A complete JMS client example program that sends N TextMessages to a Queue B
    ?* and asynchronously receives the messages as modified by TextMDB from Queue A.
    ?*
    ?* @author Scott.Stark@jboss.org
    ?* @version $Revision: 1.9 $
    ?*/
    public class SendRecvClient {
    ?static final int N = 10;

    ?static CountDown done = new CountDown(N);

    ?QueueConnection conn;

    ?QueueSession session;

    ?Queue queA;

    ?Queue queB;

    ?public static class ExListener implements MessageListener {
    ??public void onMessage(Message msg) {
    ???done.release();
    ???TextMessage tm = (TextMessage) msg;
    ???try {
    ????System.out.println("onMessage, recv text=" + tm.getText());
    ???} catch (Throwable t) {
    ????t.printStackTrace();
    ???}
    ??}
    ?}

    ?public void setupPTP() throws JMSException, NamingException {
    ??InitialContext iniCtx = InitContext.getInitContext();
    ??Object tmp = iniCtx.lookup("ConnectionFactory");
    ??QueueConnectionFactory qcf = (QueueConnectionFactory) tmp;
    ??conn = qcf.createQueueConnection();
    ??queA = (Queue) iniCtx.lookup("queue/A");
    ??queB = (Queue) iniCtx.lookup("queue/B");
    ??session = conn.createQueueSession(false, QueueSession.AUTO_ACKNOWLEDGE);
    ??conn.start();
    ?}

    ?public void sendRecvAsync(String textBase) throws JMSException,
    ???NamingException, InterruptedException {
    ??System.out.println("Begin sendRecvAsync");

    ??// Setup the PTP connection, session
    ??setupPTP();

    ??// Set the async listener for queA
    ??QueueReceiver recv = session.createReceiver(queA);
    ??recv.setMessageListener(new ExListener());

    ??// Send a few text msgs to queB
    ??QueueSender send = session.createSender(queB);

    ??for (int m = 0; m < 10; m++) {
    ???TextMessage tm = session.createTextMessage(textBase + "#" + m);
    ???tm.setJMSReplyTo(queA);
    ???send.send(tm);
    ???System.out.println("sendRecvAsync, sent text=" + tm.getText());
    ??}
    ??System.out.println("End sendRecvAsync");
    ?}

    ?public void stop() throws JMSException {
    ??conn.stop();
    ??session.close();
    ??conn.close();
    ?}

    ?public static void main(String args[]) throws Exception {
    ??System.out.println("Begin SendRecvClient,now="
    ????+ System.currentTimeMillis());
    ??SendRecvClient client = new SendRecvClient();
    ??client.sendRecvAsync("A text msg");
    ??client.done.acquire();
    ??client.stop();
    ??System.exit(0);
    ??System.out.println("End SendRecvClient");
    ?}

    }

    posted on 2006-04-24 19:16 崛起的程序員 閱讀(338) 評論(0)  編輯  收藏 所屬分類: java
    主站蜘蛛池模板: 91亚洲导航深夜福利| 久久久亚洲欧洲日产国码农村| 18pao国产成视频永久免费| www.999精品视频观看免费| 亚洲人妻av伦理| 久久久久亚洲精品天堂| 美女扒开屁股让男人桶爽免费| 四虎影视成人永久免费观看视频| 亚洲第一成年免费网站| 亚洲理论片在线观看| 久久久WWW成人免费精品| 国产桃色在线成免费视频| 免费人成在线观看视频播放| 久久水蜜桃亚洲av无码精品麻豆| 久久精品国产免费一区| 国产精品V亚洲精品V日韩精品| 又黄又大的激情视频在线观看免费视频社区在线 | 亚洲国产精品综合久久网络| 亚洲黄色在线网站| av免费不卡国产观看| 亚洲成人午夜在线| 国产成人yy免费视频| 亚洲伊人久久大香线蕉AV| 亚洲免费在线播放| 亚洲乱码中文论理电影| 久久青草免费91线频观看站街| 亚洲人成网站在线观看青青| XXX2高清在线观看免费视频| 亚洲午夜精品久久久久久人妖| 亚洲精品视频免费| 亚洲精品456播放| 国产精品亚洲一区二区三区 | 一个人免费高清在线观看 | 亚洲性一级理论片在线观看| 爽爽爽爽爽爽爽成人免费观看| 国产免费人视频在线观看免费| 国产午夜亚洲精品国产| 九九精品免费视频| 污视频网站免费观看| 午夜亚洲av永久无码精品| 亚洲爆乳精品无码一区二区|