bibletopicpublisher.java

来自「100多M的J2EE培训内容」· Java 代码 · 共 98 行

JAVA
98
字号
package bible.jms;



import javax.jms.*;

import javax.naming.*;

import java.util.*;


/**
 * Class BibleTopicPublisher
 *
 *
 * @author
 * @version %I%, %G%
 */
public class BibleTopicPublisher {

  /**
   * Method main
   *
   *
   * @param args
   *
   */
  public static void main(String[] args) {

    Context                ctx                = null;
    Hashtable              ht                 = new Hashtable();
    TopicConnectionFactory tConnectionFactory = null;
    TopicConnection        tConnection        = null;
    TopicSession           tSession           = null;
    TopicPublisher         tPublisher         = null;
    Topic                  t                  = null;
    TextMessage            textMsg            = null;
    String                 msg;

    try {

      // Obtain references to JMS Topic components.
      ht.put(Context.INITIAL_CONTEXT_FACTORY,
             "weblogic.jndi.WLInitialContextFactory");
      ht.put(Context.PROVIDER_URL, "t3://localhost:7001");

      ctx                = new InitialContext(ht);
      tConnectionFactory =
        (TopicConnectionFactory) ctx.lookup("BibleJMSFactory");
      tConnection        = tConnectionFactory.createTopicConnection();
      tSession           = tConnection.createTopicSession(false,
        javax.jms.TopicSession.AUTO_ACKNOWLEDGE);
      t                  = (Topic) ctx.lookup("BibleJMSTopic");
      tPublisher         = tSession.createPublisher(t);

      System.out.println("Publishing messages...");

      textMsg = tSession.createTextMessage();

      for (int i = 1; i <= 10; i++) {
        msg = "Message #" + i;

        textMsg.clearBody();
        textMsg.setIntProperty("severity", i);
        textMsg.setText(msg);
        System.out.println("  Publishing message: " + msg);
        tPublisher.publish(textMsg);
      }

      msg = "Stop";

      textMsg.clearBody();
      textMsg.setText(msg);
      textMsg.setIntProperty("severity", 0);
      System.out.println("  Sending message: " + msg);
      tPublisher.publish(textMsg);
    } catch (Exception e) {
      e.printStackTrace();
    } finally {
      try {

        // Release JMS resources.
        tPublisher.close();
        tSession.close();
        tConnection.close();
      } catch (Exception e) {
        e.printStackTrace();
      }
    }
  }
}


/*--- Formatted in Bible Style on Thu, Sep 6, '01 ---*/


/*------ Formatted by Jindent 3.24 Gold 1.02 --- http://www.jindent.de ------*/

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?