如何使用Java连接到MQ

时间:2014-09-04 15:57:53

标签: java ibm-mq

嘿我想联系&使用JAVA将字符串发送到MQ 我是新手,所以请你帮我解决这个问题。 我只是想做连接&发送一个字符串。

我有关于MQ的以下信息。 JNDI名称: ABCDEFH 队列管理员: ABCDEFH 主机名或IP地址: ABCDEFH 端口: ABCDEFH 频道: ABCDEFH 运输类型: ABCDEFH

2 个答案:

答案 0 :(得分:8)

您可以使用两种不同的API来使用Java语言发送MQ消息。您可以使用MQ Classes for Java,然后使用JMS API

由于您提到JNDI,我怀疑您的意思是JMS API。但是,我会回答两者。你听起来像是想要一些示例代码。 IBM MQ产品为您提供了要查看的示例代码。

对于MQ Classes for Java,我建议您查看<wmq-installation-directory>\Tools\wmqjava\samples\MQSample.java - 这是Java类的“Hello World”应用程序。

对于JMS界面,我建议您查看<wmq-installation-directory>\Tools\jms\samples\JmsProducer.java

答案 1 :(得分:3)

您可以使用以下代码进行一些更改:

1.相应地更改主机,端口,通道,qName和qManager名称。

2.对于OpenOption,请使用MQC.MQOO_OUTPUT。

希望这有帮助。

//method to connect and send message to Mq   
public void mqSend(){
  try{

     //Create a Hashtable with required properties
     Hashtable properties = new Hashtable<String, Object>();
     properties.put("hostname", host);
     properties.put("port", port);
     properties.put("channel", channel); 

     //Create a instance of qManager
     MQQueueManager qMgr = new MQQueueManager(qManagerName, properties);

     //Connect to the Queue
     MQQueue queue = qMgr.accessQueue(qname, openOptions);

     //Creating the mqmessage
     MQMessage mqMsg = new MQMessage();
     mqMsg.writeString(//My Message); 

     MQPutMessageOptions pmo = new MQPutMessageOptions();

     queue.put(mqMsg,pmo);

     queue.close();
     qMgr.disconnect();
  }catch(MqException mqEx){
     mqEx.printStackTrace();
  }
}

注意::请忽略拼写错误和格式,因为我使用手机输入了这个。