⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 newcustomermessageproducer.java

📁 java的一系列产品中包括jsme,jmse,j2ee,本文件提供j2ee实现的源代码.
💻 JAVA
字号:
package bankaccount;

import javax.jms.JMSException;
import javax.jms.MapMessage;
import javax.jms.Queue;
import javax.jms.QueueConnection;
import javax.jms.QueueConnectionFactory;
import javax.jms.QueueSender;
import javax.jms.QueueSession;
import javax.jms.Session;
import javax.naming.Context;
import javax.naming.NamingException;

public final class NewCustomerMessageProducer extends BaseClient {

  private static final String JMS_CONN_FACTORY = 
    		"weblogic.jms.ConnectionFactory";
  private String JMS_QUEUE = "MessageQueue";

  private QueueConnection queueConnection = null;
  private QueueSender queueSender         = null;
  private QueueSession queueSession       = null;
  private Queue queue                     = null;
  private MapMessage msg                 = null;

  public NewCustomerMessageProducer(String [] argv) throws Exception
  {
    super(argv);
    try {
      Context ctx = getInitialContext();
      QueueConnectionFactory factory = (QueueConnectionFactory)
        	ctx.lookup(JMS_CONN_FACTORY);

      queueConnection = factory.createQueueConnection();
      // Create a non-transacted JMS Session
      queueSession = 
        queueConnection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
    
      queue = (Queue) ctx.lookup(JMS_QUEUE);
      queueSender = queueSession.createSender(queue);
      msg = queueSession.createMapMessage();
      queueConnection.start();
    } catch (Exception e) {
      System.err.println("Error while attempting to connect to the "+
        "server and lookup the JMS QueueConnectionFactory.");
      e.printStackTrace();
      throw e;
    }
  }

  public void send(int id, String firstName, String lastName, String email)
    throws JMSException
  {
    try {
      msg.clearBody();

      msg.setInt("ID", id);
      msg.setString("FIRST_NAME", firstName);
      msg.setString("LAST_NAME", lastName);
      msg.setString("EMAIL_ADDRESS", email);

      queueSender.send(msg);
    } catch (JMSException e) {
      System.err.println("Exception raised while sending to queue: "+
        JMS_QUEUE);
      e.printStackTrace();
      throw e;
    }
  }

  public void kill() 
    throws JMSException
  {
    try {
      queueSender.close();
      queueSession.close();
      queueConnection.close();
    } catch (JMSException e) {
      System.err.println("Exception raised while closing JMS resources.");
      e.printStackTrace();
      throw e;
    }
  }


  public static void main(String[] argv) throws Exception
  {
    NewCustomerMessageProducer client = new NewCustomerMessageProducer(argv);

    client.send(1, "Cedric",  "Jones",   "cedric@learnweblogic.com");
    client.send(2, "Thorick", "Smith",   "thorick@learnweblogic.com");
    client.send(3, "Seth",    "Johnson", "seth@learnweblogic.com");
    client.kill();
  }
}

⌨️ 快捷键说明

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