是否可以使用 Java 和 JMS 连接到本地 运行 IBM MQ Light?
Is it possible to connect to a locally running IBM MQ Light with Java and JMS?
问题的标题几乎说明了一切:是否可以使用 Java 和 JMS 连接到本地 运行 IBM MQ Light?
在 this post 的评论部分,Rob Nicholson 说这是不可能的,但我想知道情况是否有所改变。遗憾的是,除此评论外,我无法找到明确否定这种可能性的信息。
澄清一下,MQ Light 在本地运行,而不是在 IBM 的 bluemix 中运行。
当然可以将 JMS 与 MQLight 一起使用!
由于 MQLight 支持有线协议 AMQP 1.0,您可以使用 Apache QPid Proton library.
两个文件中的工作示例将向 MQLight 队列生成一条消息。
Main.java
import org.apache.qpid.jms.JmsConnectionFactory;
import javax.jms.*;
public class Main {
public static void main(String[] args){
try {
ConnectionFactory cf = new JmsConnectionFactory("amqp://localhost:5672");
Connection connection = cf.createConnection();
Session session = connection.createSession(false,Session.AUTO_ACKNOWLEDGE);
MessageProducer producer = session.createProducer(session.createQueue("QUE.BAR"));
producer.send(session.createTextMessage("foo bar"));
producer.close();
session.close();
connection.close();
}catch(JMSException jmsException){
jmsException.printStackTrace();
}
}
}
pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example.test</groupId>
<artifactId>mqlight-jms</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.apache.qpid</groupId>
<artifactId>qpid-jms-client</artifactId>
<version>0.3.0</version>
</dependency>
</dependencies>
</project>
问题的标题几乎说明了一切:是否可以使用 Java 和 JMS 连接到本地 运行 IBM MQ Light? 在 this post 的评论部分,Rob Nicholson 说这是不可能的,但我想知道情况是否有所改变。遗憾的是,除此评论外,我无法找到明确否定这种可能性的信息。
澄清一下,MQ Light 在本地运行,而不是在 IBM 的 bluemix 中运行。
当然可以将 JMS 与 MQLight 一起使用!
由于 MQLight 支持有线协议 AMQP 1.0,您可以使用 Apache QPid Proton library.
两个文件中的工作示例将向 MQLight 队列生成一条消息。
Main.java
import org.apache.qpid.jms.JmsConnectionFactory;
import javax.jms.*;
public class Main {
public static void main(String[] args){
try {
ConnectionFactory cf = new JmsConnectionFactory("amqp://localhost:5672");
Connection connection = cf.createConnection();
Session session = connection.createSession(false,Session.AUTO_ACKNOWLEDGE);
MessageProducer producer = session.createProducer(session.createQueue("QUE.BAR"));
producer.send(session.createTextMessage("foo bar"));
producer.close();
session.close();
connection.close();
}catch(JMSException jmsException){
jmsException.printStackTrace();
}
}
}
pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example.test</groupId>
<artifactId>mqlight-jms</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.apache.qpid</groupId>
<artifactId>qpid-jms-client</artifactId>
<version>0.3.0</version>
</dependency>
</dependencies>
</project>